第八章 Jenkins使用Gradel構建jar包
阿新 • • 發佈:2021-08-25
一、安裝Gradel
官網下載地址:https://gradle.org/releases/
1.下載安裝包
[root@staging opt]# cd /data/software/
[root@staging software]# wget https://services.gradle.org/distributions/gradle-7.1.1-bin.zip
[root@staging software]# ll
total 17519864
-rw-r--r-- 1 root root 112231447 Jul 2 20:29 gradle-7.1.1-bin.zip
2.解壓安裝包
[root@staging software]# unzip gradle-7.1.1-bin.zip -d /opt [root@staging software]# cd /opt/ [root@staging opt]# ll total 1724864 drwxr-xr-x 5 root root 85 Feb 1 1980 gradle-7.1.1
3.建立軟連線
[root@staging opt]# ln -s gradle-7.1.1 gradle
[root@staging opt]# ll
total 1724864
lrwxrwxrwx 1 root root 12 Aug 18 14:29 gradle -> gradle-7.1.1
drwxr-xr-x 5 root root 85 Feb 1 1980 gradle-7.1.1
4.配置環境變數
[root@staging opt]# cat /etc/profile.d/gradle.sh export PATH=/opt/gradle/bin:$PATH
5.重新整理環境變數
[root@staging opt]# source /etc/profile.d/gradle.sh
6.驗證版本
[root@staging ~]# gradle -v Welcome to Gradle 7.1.1! Here are the highlights of this release: - Faster incremental Java compilation - Easier source set configuration in the Kotlin DSL For more details see https://docs.gradle.org/7.1.1/release-notes.html ------------------------------------------------------------ Gradle 7.1.1 ------------------------------------------------------------ Build time: 2021-07-02 12:16:43 UTC Revision: 774525a055494e0ece39f522ac7ad17498ce032c Kotlin: 1.4.31 Groovy: 3.0.7 Ant: Apache Ant(TM) version 1.10.9 compiled on September 27 2020 JVM: 1.8.0_20 (Oracle Corporation 25.20-b23) OS: Linux 3.10.0-1160.15.2.el7.x86_64 amd64
二、Gradle外掛安裝
#1.開啟瀏覽器,輸入登入jenkins的URL,接著輸入使用者名稱和密碼,點選登入,成功登入jenkins
#2.點選系統管理 --> 外掛管理 --> 可選外掛(這裡已經安裝)--> 搜尋gradle --> 安裝gradle
三、Jenkins進行全域性配置
#1.點選系統管理 --> 全域性工具配置
#2.點選新增gradle --> 去除自動安裝 --> 自定義名稱 --> gradle路徑 --> 儲存
四、構建專案
#1.點選Dashboard --> 新建任務 --> 填寫任務名稱 --> 構建一個自由風格的軟體專案 --> 確定
#2.選擇引數化構建過程,選擇選項引數,填入以下內容:
名稱:IS_JENKINS
選項:TRUE
FALSE
#3.繼續選擇引數化構建過程,選擇Git引數,填入以下內容:
名稱:GIT_TAG
描述:Git分支選擇
引數型別:分支或標籤
預設值: */master
分支過濾: .*
標籤過濾: *
其他預設即可
#4.選擇原始碼管理 --> 使用Git --> Gitlab原始碼地址 --> jenkins伺服器的憑證 --> 指定分支:${GIT_TAG} 為引數化構建的名稱。
#5.選擇構建 --> 執行shell,新增以下內容:
cd /var/lib/jenkins/workspace/nex-52.82.25.77/stg-backproject-dbh-dev #進入工作空間目錄
chmod +x gradlew #修改檔案許可權
gradle wrapper #安裝gradlew
./gradlew clean bootJar #編譯
#6.選擇構建 --> 選擇全域性配置裡面的主機 --> jar包位置 --> 去掉目錄 --> 新增遠端機器目錄 --> 執行遠端伺服器指令碼 --> 高階 --> 勾選Exec in pty --> 儲存。
#7.編輯指令碼到遠端伺服器
[root@nex-dev /data/backproject/dbh]$ vim run.sh
Project_name=$1
Port_no=$2
#echo $Project_name
#echo $Port_no
source /etc/profile
# 進入到專案
cd /data/backproject/$Project_name
# 找到原程序,kill
pid=$(ps -ef | grep java| grep $Project_name|awk -F '[ ]+' '{print $2}')
kill -9 $pid
#啟動jar
nohup java -jar $Project_name-0.0.1-SNAPSHOT.jar --server.port=$Port_no -server -Xmx1000m -Xms1000m -Xmn700m -XX:+UseParallelGC &
echo "starting service..."
sleep 20
#根據重啟後是否有當前應用判斷啟動是否成功
pid=$(ps -ef | grep java| grep $Project_name|awk -F '[ ]+' '{print $2}')
#echo $pid
if [ -z $pid ];then
echo "啟動失敗"
exit 1
else
echo $Project_name : $pid "SUCCESS"
fi
五、執行Jenkins構建
#1.選擇Build with Parameters --> 是否是jenkins構建 --> 自行選擇分支程式碼拉取 --> 點選開始構建
#2.選擇構建歷史,點選正在構建的專案,檢視控制檯輸出,最後檢視構建狀態為success。
六、驗證專案狀態
#1.進入遠端伺服器,檢視專案啟動程序
[root@nex-dev /data/backproject/dbh]$ ps -ef |grep dbh
root 28968 1 1 09:29 pts/1 00:00:26 java -jar /data/backproject/dbh/dbh-0.0.1-SNAPSHOT.jar -Xmx1000m -Xms1000m -Xmn700m --spring.profiles.active=dev
root 29211 21440 0 09:54 pts/0 00:00:00 grep --color=auto dbh
#2.登入管理介面,登入正常