转载自 http://www.cnblogs.com/liuhaixia/p/7267473.html

Jenkins是基于Java开发的一种持续集成工具,用于监控秩序重复的工作。通过Jenkins+svn+ant+tomcat整合,可以完成对系统源代码的下载更新,以及代码的自动编译打包和项目的自动部署工作,而且项目的自动构建与平台无关,可以定时操作,从而使得测试人员脱离开发人员。

1、Jenkins工作原理

Jenkins是一个管理者,定时从svn获取更新的代码,拷贝到自己的workspace,然后利用ant将源码编译并生成war包,拷贝到tomcat的webapp目录下,再调用tomcat启动命令启动tomcat。

2、准备环境

安装jdk、ant、svn、tomcat,并配置环境变量JAVA_HOME、ANT_HOME,并添加到path,具体安装方法与环境变量配置省略。

3、Jenkins下载与安装

到官网下载jenkins.war。

第一种:进入到jenkins.war所在目录,打开cmd窗口,执行命令java –jar jenkins.war。默认端口为8080,指定端口启动命令java –jar Jenkins.war –httpPort=8089。访问页面:http://127.0.0.1:8089/,浏览器出现jenkins界面。

第二种:将jenkins.war 放到tomcat的webapp目录下,启动tomcat。访问页面:http://127.0.0.1:8080/jenkins,浏览器出现jenkins界面。

说明:第一次安装jenkins后,可能需要初始化,按步骤进行初始化即可。

4、Jenkins安装插件

需要安装Ant Plugin(ant)、Deploy to container Plugin(tomcat)、Hudson Subversion Plug-in(svn)插件。

第一种:在线安装。点击“系统管理”—>“管理插件”:

进入到“插件管理”界面,选择“可选插件”选项卡,选择需要安装的插件安装即可。

第二种:离线安装。到官网下载相关插件,切换到“高级”选项卡,点击“浏览”,选择下载的插件*.jpi或*.hpi,点击“上传“,等待上传完成。

上传完成后,需要重启Jenkins。在“已安装“选项卡中可以看到安装的插件。

5、创建持续集成任务

点击“新建”,输入名称,点击“构建一个自由风格的软件项目”点击“ok”,进入到构建界面

“General”是项目的基本信息。

“源码管理“配置源码svn地址,第一次需要输入svn用户名、密码。

“构建触发器”选择卡选择“Poll SCM”,日程表输入*/5 * * * *,意思是每五分钟检测一次源码变化。第一个域代表分钟,取值0-59,第二个域代表小时,取值0-23,第三个域代表天,取值1-31,第四个域代表月,取值1-12,第五个域代表星期,取0-7,0和7都代表星期天。

“构建”选择卡选择“Invoke Ant”

“构建后操作”选择卡选择“Deploy war/ear to a container”,必须安装“deploy.hpi”插件。

如果用“admin”无法登录,则修改tomcat/conf/tomcat-users.xml为:

<tomcat-users>

<role rolename="tomcat"/>

<role rolename="role1"/>

<role rolename="admin"/>

<role rolename="manager"/>

<user username="admin" password="admin" roles="admin,manager"/>

<user username="tomcat" password="tomcat" roles="tomcat"/>

<user username="both" password="tomcat" roles="tomcat,role1"/>

<user username="role1" password="tomcat" roles="role1"/>

</tomcat-users>

配置完毕后,点击“保存”按钮,完成任务配置。

6、构建

选择“立即构建”。蓝色代表构建成功,红色代表构建失败,点击链接,可以查看详情,点击“console Output”,查看构建日志。

最新文章

  1. 【video】m3u8
  2. SQL Server 对dbcc checkdb的优化
  3. PHP搭建简单暴力的mvc
  4. .Net IOC 之Unity
  5. (转)linux下如何批量杀JAVA进程或某个进程方法
  6. 查找linux下进程占用CPU过高的原因,以php-fpm为例
  7. robotframework使用中的一些注意事项
  8. 001.Redis简介及安装
  9. Linux之find
  10. 自动化运维工具-mussh工具安装配置及简单使用讲解
  11. java虚拟机学习-触摸java常量池(13-1)
  12. 伯努利分布、二项分布、Beta分布、多项分布和Dirichlet分布与他们之间的关系,以及在LDA中的应用
  13. SQL Server 数据库自建表
  14. GIT(3)----问题汇总
  15. X264编码流程详解(转)
  16. o7 文件和函数
  17. 【Rocket MQ】RocketMQ4.2.0 和 spring boot的结合使用,实现分布式事务
  18. 45-Identity MVC:注册逻辑实现
  19. python基础之try异常处理、socket套接字基础part1
  20. linux crontab 定时任务解析

热门文章

  1. java.net.BindException: 地址已在使用 (Bind failed)
  2. ant 标签详解
  3. Redis 主从复制, 读写分离
  4. tp5中ajax方式提交表单
  5. 页面中href链接的碰撞
  6. Netty - 1
  7. Lazarus中Windows单元问题
  8. 记一个pg连接数过多的异常
  9. Linux sed命令使用方法
  10. javascript单线程那些事