jenkins 针对java聚合多级模块中单个模块构建
·
本文将介绍如何使用Jenkins构建包含多个模块的Spring Cloud项目,并对其中一个或多个模块的构建。
对应工程模块架构如下:
一个父工程下多个模块,并且每个模块下有各自的聚合工程
| - A
| — B
| ----- B1
| ----- B2
| — C
| ----- C1
| ----- C2
准备工作
确保你已经安装了Jenkins和Maven,并在Jenkins中配置了Maven的全局设置
-
新建item选择自由项目Freestyle project


-
在源码管理上填入git地址,博主用的时gitlab,根据情况选择对应的源码库

- 构建环境选择jdk,博主用的11

- 新增构建步骤

- 选择执行shell命令

-
填入maven打包命令

-
再次新增构建步骤,选择通过ssh发送或执行shell命令

-
填入服务器信息,及源文件信息

执行脚本:
scp root@192.168.1.111:/var/lib/jenkins/workspace/B/B1_test/target/B1.jar /usr/local/java/B1/B1.jar /usr/local/java/B/./start.sh restart
/var/lib/jenkins/workspace/B/B1_test/target/B1.jar:是jenkins构建是创建的工作目录,
通过jenkins 构建产生的jar文件都在/var/lib/jenkins/workspace目录下
/usr/local/java/B:是目标服务器,需要启动jar文件的服务器目录
- shell脚本 start.sh
#! /bin/sh
PORT=8901
HOME='/usr/local/java/B'
LOG_HOME='/usr/local/java/B'
LOG_FILE='nohup.out'
JAVA_HOME='*.jar'
stop() {
PID=$(ps -ef | grep $PORT | grep -v grep | awk '{ print $2 }')
if [ -n "$PID" ];then
kill -9 $PID
echo "$PORT KILL SUCCESS"
fi
}
start() {
PID=$(ps -ef | grep $PORT | grep -v grep | awk '{ print $2 }')
echo "START PID:$PID"
PID1=$(ps -ef | grep $PORT | grep -v grep | awk '{ print $2 }')
echo "START PID1:$PID1"
if [ ! -n "$PID1" ];then
cd $HOME
echo "$PORT PORT START SUCESS"
nohup java -jar -Xmx512m -Xms512m -XX:MaxMetaspaceSize=256M -XX:MetaspaceSize=256M $JAVA_HOME --server.port=$PORT>$LOG_HOME/$LOG_FILE 2>&1 &
fi
}
case $1 in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
*)
echo "please enter:stop,start or restart"
exit 0
;;
esac
更多推荐




所有评论(0)