jenkins后台执行shell命令

时间:2023-01-25 02:27:25

参考官网:
https://wiki.jenkins.io/display/JENKINS/ProcessTreeKiller

原理:启动的时候给命令,让jenkins不终结自己的进程衍生的进程。

 java -Dhudson.util.ProcessTree.disable=true -jar jenkins.war

还有一种办法直接在shell(要后台执行命令前)加入:

BUILD_ID=dontKillMe

举例:

 BUILD_ID=dontKillMe nohup java -Xms246m -Xmx500m -jar ?????.jar > log.log &

下面是jenkins执行前和后的日志对比

执行前:

+ echo ???? deploy finished'
???? deploy finished
+ nohup java -Xms246m -Xmx500m -jar ????.jar

执行后

+ echo ???? deploy finished'
???? deploy finished
+ BUILD_ID=dontKillMe
+ nohup java -Xms246m -Xmx500m -jar ????.jar

然后进程就可以在服务器上看到了。