Jenkins+maven持續(xù)集成的實(shí)現(xiàn)
環(huán)境
系統(tǒng):centos 7
tomcat位置:/usr/local/jbreport/apache-tomcat-8.5.57
jdk位置:/usr/local/jbreport/jdk1.8.0_152
安裝Jenkins
下載依賴
wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
導(dǎo)入密鑰
rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
安裝
yum install jenkins
配置jdk
編輯Jenkins配置文件 vi /etc/init.d/jenkins 加入一行自己jdk的位置,這里我jdk是/usr/local/jbreport/jdk1.8.0_152 注意:直接加入/usr/local/jbreport/jdk1.8.0_152 是不行的,他這里指向的是bin目錄下Java可執(zhí)行文件,/usr/local/jbreport/jdk1.8.0_152/bin/java

注意:如果服務(wù)器上自帶了openjdk,或者已有jdk環(huán)境。那么可以使用which java 查看所在的位置,在/etc/init.d/jenkins中根據(jù)所在位置配置即可

保存后 重新加載一下服務(wù)
systemctl daemon-reload
啟動(dòng)Jenkins
systemctl restart jenkins
查看運(yùn)行狀態(tài)
systemctl status jenkins

開通Jenkins默認(rèn)端口8080
firewall-cmd --add-port=8080/tcp --permanent firewall-cmd --reload firewall-cmd --permanent --query-port=8080/tcp
瀏覽器訪問:http://192.168.31.170:8080

配置Jenkins
解鎖Jenkins
根據(jù)頁面提示到服務(wù)器去查看/var/lib/jenkins/secrets/initialAdminPassword文件 cat /var/lib/jenkins/secrets/initialAdminPassword

安裝插件
安裝推薦的插件






下載插件



下載源碼插件
源碼在git上的下載Git plugin插件(我這里默認(rèn)已經(jīng)安裝了) 源碼在svn上的下載Subversion插件


下載maven插件

下載并配置maven 下載:
wget http://mirrors.hust.edu.cn/apache/maven/maven-3/3.5.4/binaries/apache-maven-3.5.4-bin.tar.gz
解壓:
tar -zxvf apache-maven-3.5.4-bin.tar.gz
創(chuàng)建一個(gè)倉庫目錄
cd apache-maven-3.5.4/ mkdir repo 移動(dòng)到自己喜歡的位置 mv /root/apache-maven-3.5.4 /usr/local/jbreport/maven rm -rf /root/apache-maven-3.5.4 rm -rf /root/apache-maven-3.5.4-bin.tar.gz
配置maven環(huán)境變量
vi /etc/profile
在文件末尾添加maven所在位置的環(huán)境變量
MAVEN_HOME=/usr/local/jbreport/maven
export PATH=${MAVEN_HOME}/bin:${PATH}
保存后刷新一下環(huán)境變量,并驗(yàn)證maven環(huán)境
source /etc/profile
mvn -v


配置maven源和本地倉庫
vi /etc/profile
在文件末尾添加maven所在位置的環(huán)境變量
MAVEN_HOME=/usr/local/jbreport/maven
export PATH=${MAVEN_HOME}/bin:${PATH}
保存后刷新一下環(huán)境變量,并驗(yàn)證maven環(huán)境
source /etc/profile
mvn -v


創(chuàng)建自動(dòng)構(gòu)建任務(wù)
新建一個(gè)任務(wù)

取一個(gè)好聽的名字,選擇maven項(xiàng)目,點(diǎn)擊確定

配置
勾選丟棄舊的構(gòu)建

源碼管理我選擇了SVN
Repository URL : 源碼地址
Credentials : 憑據(jù),也就是svn的賬號(hào)密碼,點(diǎn)擊后面添加按鈕添加一個(gè)
下面幾個(gè)可以不用管了


勾選構(gòu)建之前刪除舊的工作空間

build 配置

保存配置


全局工具配置

maven-settings.xml配置


jdk配置


maven配置


保存配置

嘗試構(gòu)建一次
發(fā)現(xiàn)不能刪除自定義空間,于是給jenkins用戶授予root權(quán)限 vi /etc/sysconfig/jenkins 找到如下行: 將原來的jenkins用戶修改為 root用戶。 $JENKINS_USER="root" 修改Jenkins相關(guān)文件夾用戶權(quán)限,更改jenkins三個(gè)文件夾的用戶所有都和用戶組: chown -R root:root /var/lib/jenkins chown -R root:root /var/cache/jenkins chown -R root:root /var/log/jenkins 重啟Jenkins systemctl restart jenkins 再次構(gòu)建成功




Post Steps
上面我已經(jīng)構(gòu)建成功了 但構(gòu)建的目錄是自定義的 /usr/local/jbreport/workspace 即目前通過maven編譯后的class文件都還在此目錄中 所以下面需要通過Post Steps 把maven編譯的class移動(dòng)替換到tomcat的webapps下對(duì)應(yīng)的項(xiàng)目中


在Post Steps中編寫自動(dòng)化腳本


腳本解釋
停止tomcat服務(wù) systemctl stop tomcat 刪除tomcat下webapps下ROOT項(xiàng)目中的所有內(nèi)容 rm -rf /usr/local/jbreport/apache-tomcat-8.5.57/webapps/ROOT/* 把構(gòu)建空間中項(xiàng)目target目錄中的WEB-INF和META-INF復(fù)制到tomcat中ROOT項(xiàng)目里 cp -r /usr/local/jbreport/workspace/target/jbreport-application/* /usr/local/jbreport/apache-tomcat-8.5.57/webapps/ROOT/ 啟動(dòng)tomcat服務(wù) systemctl start tomcat
再次構(gòu)建并驗(yàn)證
構(gòu)建成功 查看tomcat中ROOT項(xiàng)目中文件的日期都是最新,證實(shí)ROOT已更新為最新代碼
到此這篇關(guān)于Jenkins+maven持續(xù)集成的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)Jenkins+maven持續(xù)集成內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
JDK動(dòng)態(tài)代理提高代碼可維護(hù)性和復(fù)用性利器
這篇文章主要為大家介紹了JDK動(dòng)態(tài)代理提高代碼可維護(hù)性和復(fù)用性利器,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-10-10
Spring6當(dāng)中獲取Bean的四種方式小結(jié)
Spring 為Bean 的獲取提供了多種方式,通常包括4種方式,(也就是說在Spring中為Bean對(duì)象的創(chuàng)建準(zhǔn)備了多種方案,目的是:更加靈活),本文將通過代碼示例詳細(xì)的給大家介紹了一下這四種方式,需要的朋友可以參考下2024-04-04
SpringBoot從2.7.x 升級(jí)到3.3注意事項(xiàng)
從SpringBoot 2.7.x升級(jí)到3.3涉及多個(gè)重要變更,特別是因?yàn)?nbsp;Spring Boot 3.x 系列基于 Jakarta EE 9,而不再使用 Java EE,本文就來詳細(xì)的介紹一下,感興趣的可以了解一下2024-09-09
java實(shí)現(xiàn)附件預(yù)覽(openoffice+swftools+flexpaper)實(shí)例
本篇文章主要介紹了java實(shí)現(xiàn)附件預(yù)覽(openoffice+swftools+flexpaper)實(shí)例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2016-10-10
mybatis typeAliases 給實(shí)體類起別名的方法
這篇文章主要介紹了mybatis typeAliases 給實(shí)體類起別名,本文給大家分享兩種用法,通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-09-09

