转载自 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”,查看构建日志。

Jenkins+svn+ant+tomcat持续集成的更多相关文章

  1. Jenkins + svn + maven 构建持续集成环境搭建

    Jenkins简介 Jenkins是一个开源软件项目,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能. Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括: ...

  2. Jenkins+Jmeter+Ant接口持续集成

    修改时间 修改内容 修改人 2016.5.22 创建 刘永志 2016.6.15 完成 刘永志 前言: 为什么要用Jmeter做接口测试: 当选择这套方案的时候,很多人会问,为什么选择Jmeter做C ...

  3. Jenkins+Jmeter+Ant 接口持续集成(转)

    来源:https://testerhome.com/topics/5186 为什么要用Jmeter做接口测试 当选择这套方案的时候,很多人会问,为什么选择Jmeter做Case管理?为什么不自己写框架 ...

  4. Jenkins + SVN搭建php持续集成

    目标需求 开发提交代码到SVN,jenkins在分发服务器上执行'svn update',分发服务器在把代码同步到webserver,实现持续集成 流程 配置jenkins 一.jenkins所需插件 ...

  5. Jenkins+JMeter+Ant 接口持续集成

    ​JMeter安装 JMeter安装包: 下载地址:https://jmeter.apache.org/download_jmeter.cgi 依赖JDK环境 JDK环境配置: JAVA_HOME   ...

  6. (转)使用CruiseControl+SVN+ANT实现持续集成之二

    1. 环境搭建 1.1. 下载及目录介绍 从官方站点http://cruisecontrol.sourceforge.net/download.html下载一份最新的 CC 压缩包,最新的版本号为2. ...

  7. jenkins+svn+Ant+tomcat+非maven项目构建

    首先,输入项目名称,创建一个自由风格的项目; 然后,配置旧项目的策略参数,目的是防止构建项目太多,占用资源. 下一步,jdk版本选择: 下一步,关联svn项目. 下一步:配置ant 看不清,再来一张. ...

  8. Jenkins+Jmeter+Ant自动化持续集成环境搭建

    [前言] 今天让我们先把准备工作做好 >> 搭建环境! [正文] JDK+Jmeter安装教程: 参考博客:https://www.cnblogs.com/baoziluo/p/79056 ...

  9. Jenkins+Svn+Docker搭建持续集成环境 自动部署

    一.准备工作: 两台服务器:192.168.206.212,192.168.206.213 自己新建一个maven项目 其中两台机子做下面的软件配置 212机子: 安装expect并配置: 安装jen ...

随机推荐

  1. WebService简单教程

    一.简介 1.什么是WebService? WebService是一个SOA(面向服务的编程)的架构,它是不依赖于语言,不依赖于平台,可以实现不同的语言间的相互调用,通过Internet进行基于Htt ...

  2. PostMessage实现多窗口之间的数据传递

    [本文参考自网络,参考地址:https://blog.csdn.net/lsyyoyo/article/details/38726419] 1.在公共的头文件中添加一个宏定义: #define WM_ ...

  3. 白鹭引擎 - 文本类型 ( TextField, )

    1, 普通文本 class Main extends egret.DisplayObjectContainer { public constructor() { super(); this.addEv ...

  4. js对象及元素复制拷贝

    1.数组及对象拷贝: 浅拷贝var b=$.extend(false,{},a);//对象浅拷贝 var a={aa:111,bb:{bb1:22}}; var b=$.extend(false,{} ...

  5. 线程池之 newScheduledThreadPool中scheduleAtFixedRate(四个参数)

    转自:https://blog.csdn.net/weixin_35756522/article/details/81707276 说明:在处理消费数据的时候,统计tps,需要用一个线程监控来获得tp ...

  6. Eclipse集成SonarLint

    https://docs.sonarqube.org/display/PLUG/Writing+Custom+Java+Rules+101

  7. echarts-颜色渐变

    图形的颜色. 默认从全局调色盘 option.color 获取颜色 颜色可以使用 RGB 表示,比如 'rgb(128, 128, 128)',如果想要加上 alpha 通道表示不透明度,可以使用 R ...

  8. 一个Tparams小测试

    var aParams: TParams; aPar: TParam; I:Integer; begin aParams := TParams.Create(nil); aPar := aParams ...

  9. C++复习:异常

    异常处理机制专题 前言 1)异常是一种程序控制机制,与函数机制独立和互补     函数是一种以栈结构展开的上下函数衔接的程序控制系统,异常是另一种控制结构,它依附于栈结构,却可以同时设置多个异常类型作 ...

  10. Emac

    https://emacs-china.org/ 启动 console模式的emacs,$emacs -nw 学习参考: 1)<21天精通emacs> 2)Emacs常用命令简集. 3)& ...