Jenkins (软件)

Jenkins是一款由Java编写的开源的持续集成工具。在与Oracle发生争执后，项目从Hudson项目复刻。

Jenkins提供了软件开发的持续集成服务。它运行在Servlet容器中（例如Apache Tomcat）。它支持软件配置管理（SCM）工具（包括、CVS、Subversion、Git、、和），可以执行基于Apache Ant和Apache Maven的项目，以及任意的Shell脚本和Windows批处理命令。Jenkins的主要开发者是川口耕介。Jenkins是在MIT许可证下发布的自由软件。

可以通过各种手段触发构建。例如提交给版本控制系统时被触发，也可以通过类似Cron的机制调度，也可以在其他的构建已经完成时，还可以通过一个特定的URL进行请求。

 历史 
Jenkins的前身是Hudson项目。Hudson 2004年夏天始创于昇陽電腦，2005年2月首次发布于java.net。

2007年前后，Hudson被称为相对和其他开源的构建服务器（Build Server）更好的选择。2008年5月的JavaOne大会上，Hudson成为“Duke选择奖”开发人员解决方案分类的得主。

在2010年11月，关于由谁主导来Hudson，该项目的主要贡献者和Oracle之间展开谈判。尽管在多个方面达成一致，争议集中在是否把Hudson注册为商标，后来Oracle声明对Hudson的名字拥有权利，并在2010年12月申请将其注册为商标。因此，2011年1月11日，社群号召投票将项目名称从“Hudson”变更为“Jenkins”。 2011年1月29日，社群投票以压倒多数批准通过该提案，创建Jenkins项目。

2011年2月1日，Oracle表示他们打算继续Hudson的开发，并认为Jenkins是Hudson的复刻，而非重命名。Jenkins和Hudson之后继续作为两个独立的项目，均声称对方是自己的复刻。截至2013年12月，在GitHub上的Jenkins组织有567项目成员及约1100公共库（public repository），而Hudson组织有32个项目成员和17个公共库。

在2011年，创建者川口耕介收到了，奖励其在Hudson/Jenkins项目上的工作。2014年，川口耕介成为的首席技术官。

 插件 
Jenkins的扩展插件已经发布，能使非Java语言编写的项目也使用Jenkins。对于大多数的版本控制系统和大的数据库，有与Jenkins集成的插件可用。许多构建（build）工具都是通过他们各自的插件提供支持。插件还可以改变Jenkins的外观，或添加新的功能。

构建时可以生成各种格式的测试报告（JUnit是被内建支持的，别的格式则需通过插件）。Jenkins可以显示报表，生成趋势图，并在图形化界面中呈现它们。

 参见 

持续集成软件

 参考文献 

 外部链接 

 Jenkins主页 
 Jenkins视频指南
 Hudson的自由版权图书

 Hudson和持续集成（CI）相关的文章
 Jenkins创始人川口耕介在The Changelog播客中谈论项目的起因与名字的变更
 创始人川口耕介的文章《七招优化Jenkins/Hudson》

Category:編譯工具
Category:持续集成
Category:用Java編程的自由軟體
Category:Java开发工具
Category:使用MIT许可证的软件