環境linux下,大致的配置內容如下:
- 首先安裝JDK配置環境變量等。
- 其次安裝ANT配置ANT_HONE並把bin目錄加入PATH中。
- 然后安裝Git,並生成sshkey配置ssh
- 安裝tomcat,並配置用戶信息
- 最后下載jenkins.war包,部署到tomcat下。
1. 環境變量如下:
JAVA_HOME=/usr/local/jdk1.8.0_73 PATH=$JAVA_HOME/bin:$PATH CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar ANT_HOME=/usr/local/apache-ant-1.9.7 PATH=$ANT_HOME/bin:$PATH export ANT_HOME export JAVA_HOME export PATH export CLASSPATH
2. 配置tomcat用信息如下:
<role rolename="manager-gui"/> <role rolename="manager-script"/> <role rolename="manager-jmx"/> <role rolename="manager-status"/> <role rolename="tomcat"/> <role rolename="role1"/> <user username="tomcat" password="tomcat" roles="tomcat"/> <user username="both" password="tomcat" roles="tomcat,role1"/> <user username="admin" password="admin" roles="tomcat,role1,manager-gui,manager-script,manager-jmx,manager-status"/>
3. 生成SSH的操作
ssh-keygen -t rsa -C "xxxxxx@yy.com"
回車三次(無密碼) 在~/.ssh 文件夾下生成兩個文件,id_rsa id_rsa.pub 其中pub表示公鑰,將公鑰添加到git 遠程庫中。私鑰需要添加到jenkins的配置中。
在jenkins頁面點擊Credentials,變添加私鑰信息在此處。
3. jenkins配置
打開jenkins,初始化后,安裝如下插件(Ant、Deploy to container Plugin、Git)
插件配置
在系統管理--Global Tool Configuration中進行配置git的執行路徑
ant的可執行路徑,以及ant的名稱
代碼中ant的build文件
樣例如下:
<?xml version="1.0" encoding="UTF-8" ?> <project name="palace" default="compile" basedir="."> <property name="tomcat.lib" value="/usr/local/apache-tomcat-8.0.24/lib" /> <property name="dest.dir" value="WEB-INF/classes" /> <property name="src.dir" value="src" /> <!-- 定義屬性,打成war包的名稱。 --> <property name="warFileName" value="palace.war"></property> <target name="init"> <mkdir dir="${dest.dir}" /> </target> <target name="compile" depends="init"> <javac srcdir="${src.dir}" destdir="${dest.dir}"> <classpath> <fileset dir="${tomcat.lib}"> <include name="*.jar" /> </fileset> <fileset dir="WebContent/WEB-INF/lib"> <include name="*.jar" /> </fileset> </classpath> </javac> </target> <!-- 定義默認任務,將class文件集合成jar包。 --> <target name="war" depends="compile"> <!-- 刪除原有war包。 --> <delete dir="${basedir}/${warFileName}" /> <!-- 建立新war包。 --> <war destfile="${basedir}/${warFileName}" webxml="${basedir}/WebContent/WEB-INF/web.xml"> <!-- 將非jar和非class文件拷貝到war包的對應路徑下。 --> <fileset dir="${basedir}/WebContent"> <include name="**/**.*" /> <exclude name="**/*.jar"/> <exclude name="**/*.class"/> </fileset> <!-- 將jar和class文件拷貝到war包的對應路徑下。 --> <lib dir="${basedir}/WebContent/WEB-INF/lib" /> <classes dir="${dest.dir}" /> </war> </target> <target name="clean"> <delete dir="${dest.dir}" /> </target> </project>
手動創建job
源碼管理配置(此處選擇上面添加的Credentials)
構建配置(選擇上述添加的名稱,另外targets可空,也可填寫自己要構建的target名稱,最后執行的命令為
ant -file build.xml war(target名稱)
構建后操作,注意此處必須是**/*.war,(即使絕對路徑也會報錯)