什么是Jenkins:
Sun开发了Hudson用于构建Java项目,在Oracle收购后,Hudson被改名为Jenkins(分叉代码库,并通过添加不同的插件来增强)。
什么是持续集成:
在软件开发中,当我们开发任何代码时,开发人员使用maven编译代码并运行代码的测试用例,如果发生故障,我们将修复代码。对于每一个代码,我们都需要手动进行。
但是,如果多个团队/开发人员在同一个网络应用程序的不同模块上工作,我们需要通过整合所有模块来进行集成测试。
因此,我们需要一个自动化的过程,对每一段代码进行测试,对于每一个新的代码变化,开发人员将修复问题,以防止整合问题的发生,这样,你的所有代码每天都会被测试。
Jenkins服务器提供持续集成平台和测试驱动开发。
Jenkins是开源的,是基于插件的开发,你可以通过添加不同的插件来扩展Jenkins服务器。
Jenkins用于自动化构建和部署过程
Jenkins主要集成了两个组件
1.版本控制系统,如SVN、GIT 2.构建工具,如apache maven。
Jenkins持续集成服务器是用Java开发的,可以安装在Tomcat或jetty应用服务器上。Jenkins可以通过添加更多的插件进行扩展。
Jenkins持续集成API的特点:
1.生成代码Clover报告和模块构建状态 2.与不同的构建系统如ant,gradle和maven集成 3.与不同的源代码库如svn,CVS和Git集成 4.发布的/快照模块被推送到不同的库如nexus 5.将模块推送到不同的库。将Java项目部署到测试、阶段和生产环境中 6. 构建状态,如成功或失败,都会通知给开发人员
Jenkins的优点:
1.构建失败在集成阶段被缓存起来。2.每次代码提交修改都会有自动的构建报告通知 3.Jenkins与LDAP邮件服务器集成,通知开发人员构建报告的失败或成功 4. 实现测试驱动开发和持续集成的敏捷开发 5. maven发布项目通过简单的步骤实现自动化 6.在开发环境中比生产环境更容易在早期阶段发现bug
Jenkins插件:
插件是用Java开发的,可以添加到Jenkins中以获得更多的功能。 Java插件很容易安装