Jenkins介绍

作者:LuckyMoke 时间:2015-07-26

持续集成的概念

持续集成(Continuous integration)—百度百科
集成软件的过程不是新问题,如果项目开发的规模比较小,比如一个人的项目,如果它对外部链接的依赖很小,那么软件集成不是问题,但是随着软件项目复杂度的增加(即使增加一个人),就会对集成和确保软件组件能够在一起工作提出了更多的要求-要早集成,常集成。早集成,频繁的集成帮助项目在早期发现项目风险和质量问题,如果到后期才发现这些问题,解决问题代价很大,很有可能导致项目延期或者项目失败。

持续集成正是针对这一类问题的一种软件开发实践。它倡导团队开发成员必须经常集成他们的工作,甚至每天都可能发生多次集成。而每次的集成都是通过自动化的构建来验证,包括自动编译、发布和测试,从而尽快地发现集成错误,让团队能够更快的开发内聚的软件。

持续集成的作用

  • 保证团队开发人员提交代码的质量,减轻了软件发布时的压力;

  • 持续集成中的任何一个环节都是自动完成的,无需太多的人工干预,有利于减少重复过程以节省时间、费用和工作量。

上面我们了解了持续集成的知识。既然有这么多的好处,那我们怎么样实现它呢?这就是接下来要介绍的

Jenkins介绍

jenkins

Jenkins,原名Hudson,2011年改为现在的名字,它 是一个开源的实现持续集成的软件工具。官方网站:http://jenkins-ci.org/

Jenkins 能实施监控集成中存在的错误,提供详细的日志文件和提醒功能,还能用图表的形式形象地展示项目构建的趋势和稳定性。

Jenkins特点

  • 容易安装:仅仅一个 java -jar jenkins.war,从官网下载该文件后,直接运行,或者直接部署到一个servlet container中,列如tomcat,无需额外的安装,也无需安装数据库。

  • 容易配置:提供友好的GUI配置界面,页面支持配置项的错误检查和很好的在线帮助。不需要手动的编辑xml的配置文件,但是Jenkins也支持手动修改xml配置文件。

  • 变更支持:Jenkins能从代码仓库(Subversion/CVS)中获取并产生代码更新列表并输出到编译输出信息中;

  • 插件支持:Jenkins可以通过第三方插件来扩展,使得 Jenkins 变得越来越强大;

  • 集成E-Mail/RSS/IM:当完成一次集成时,可通过这些工具实时告诉你集成结果(据我所知,构建一次集成需要花费一定时间,有了这个功能,你就可以在等待结果过程中,干别的事情);

  • JUnit/TestNG测试报告:也就是用以图表等形式提供详细的测试报表功能;

  • 支持分布式构建:Jenkins可以把集成构建等工作分发到多台计算机中完成;

  • 文件指纹信息:Jenkins会保存哪次集成构建产生了哪些jars文件,哪一次集成构建使用了哪个版本的jars文件等构建记录;

  • 最大优点:几乎支持所有的平台,如Windows、ununtu/debian、red Hat、等。

其它集成工具

其它比较著名的持续集成工具有:CruiseControl,TeamCity,Continuum等。


Tips

GitHubLuckyMoke

Weibokeailvyou

QQ839488083

米拓交流群

模板有不完善的地方欢迎指正!

1511438794807394.jpg