Jenkins 的前身是 Hudson 是一个可扩展的持续集成引擎。java
通俗的来说,jenkins就是一个能够实现自动化部署的一个插件,linux
对于我来讲,也是应用在系统部署上。web
废话很少说,直接进入咱们的安装步骤吧shell
1.安装JDK,maven环境搭建
apache
由于考虑到jenkins的实际应用场景,咱们须要把这些基础环境先安装完成。tomcat
jdk安装比较简单不作赘述,maven环境借用了osc其余大侠的博客内容,服务器
试了下安装成功。app
maven官网下载安装包:http://maven.apache.org/download.cgiwebapp
本身根据需求下载版本,这里做者选择的是3.1.1版本。maven
1.把apache-maven-3.1.1-bin.tar.gz传到服务器上,
解压:
tar -zvxf apache-maven-3.1.1-bin.tar.gz
移至/usr/local下:
mv apache-maven-3.1.1 /usr/local
配置环境变量
vi /etc/profile
在文件中加入
MAVEN_HOME=/usr/local/apache-maven-3.1.1 PATH=$MAVEN_HOME/bin:$PATH export PATH CLASSPATH JAVA_HOME MAVEN_HOME
从新编译文件
source /etc/profile
验证maven是否安装成功
mvn --version
控制台显示以下:
Apache Maven 3.1.1 (0728685237757ffbf44136acec0402957f723d9a; 2013-09-17 23:22:22+0800)
Maven home: /usr/local/apache-maven-3.1.1
Java version: 1.7.0_25, vendor: Oracle Corporation
Java home: /usr/java/jdk1.7.0_25/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "linux", version: "2.6.32-358.6.2.el6.x86_64", arch: "amd64", family: "unix"
表示安装成功。
2.安装Jenkins
若是你有Jenkins.war放入tomcat/webapps目录中便可,启动tomcat 访问localhost:8080/Jenkins
看到这个就表示安装成功。注:提示说它正在启动什么的,稍等下就行了。
3.使用Jenkins
3.1菜单:系统管理--》系统设置
点击maven安装 --》 取消勾选(会跳出填写框)
maven 配置: name -> Maven3 MAVEN_HOME -> /usr/local/apache-maven-3.2.5
点击JDK安装 --> 取消勾选(会跳出填写框)
jdk 配置: name --> JDK6 JAVA_HOME --> /usr/java/jdk1.6.0_45
其余的能够先不用配置。点击 应用 --》 保存
3.2.任务
1.点击新建:Item名称 : test 勾选构建一个maven项目 点击OK
2.源码管理 中 勾选 Subversion --> Repository URL : https://172.6.15.121/svn/8637/Zttx-APP/trunk 若是没有输入帐号密码,鼠标离开是会有提示,点击提示便可输入帐号密码。直到不提示红色错误
3.Build: Root POM --> pom.xml Goals and options --> -e clean test package -DskipTests(须要执行的maven命令)
4.Post Steps :
勾选Run only if build succeeds(maven build成功后会调用) , 点击 add pre-build step 选择 execute shell(执行linux 命令), command 中放入 rm -f /var/www/zttx-app/web/ROOT.war (移除tomcat项目中的原来项目) rm -rf /var/www/zttx-app/web/ROOT cp /root/.jenkins/jobs/Zttx_Mobile/workspace/target/ROOT.war /var/www/zttx-app/web (复制maven产生的.war文件到tomcat中去, /root/.jenkins说明是root用户生成的文件) service Tomcat-App-01 stop service Tomcat-App-02 stop service Tomcat-App-01 start service Tomcat-App-02 start 此处的作法可使用maven的插件直接部署到tomcat/webapp下。方式有不少种Jenkins自己也支持的。
4.当中遇到的一些问题分享下
4.1: maven -e clean test package -DskipTests 命令失败:提示在clean 的时候报的错误。解决方案:开放
/root/.jenkins/jobs/Zttx_Mobile/workspace/target 目录的权限。
5.ROOT.war始终没法解决的问题: 缘由,Tomcat启动的日志生成在ROOT/logs目录中,当tomcat启动的时候,生成ROOT/logs文件,tomcat解压ROOT.war文件发现ROOT文件夹存在因此就不加压了。解决方案:修改Tomcat目录下conf/logger.propers文件,修改生成日志的文件目录便可