配置java项目自动打包部署,但最后启动tomcat 死活不能起作用,只能停止tomcat,不能启动,原因是说jenkins启动完成会杀死他启动的进程,网上也用了几种方式,但是都实验过,还未能解决问题。

1、BUILD_ID=notkillme

2、nohup sh /home/tomcat/bin/startup.sh &

3、使用java -jar启动,-Dhudson.util.ProcessTree.disable=true

最后想不是支持ssh嘛,那我们远程来运行sh 文件,立刻来配置ssh支持。

下载ssh 插件

搜索ssh

安装并重启jenkins

点击最下面System

属于一个域名随意,记住就行,返回后,列表中出现刚添加的域名,再次点进去添加证书。

我这里选择了username with password,也可以选择其他的等方式。。。完成后到系统设置配置ssh

Credentials 下 选择我们刚才配置的域名哪里的证书秘钥。保存即可。

到项目下,添加add post-build step

选择Execute shell script on remote host using ssh,只有安装了ssh插件才会有

配置好远程的命令。

接下来看看我的实际项目的远程命令写法。

#!/bin/bash

echo "stop tomcat....."

sh /www/wwwroot/installpageback/apache-tomcat-9.0.88/bin/shutdown.sh

mkdir /www/wwwroot/installpageback/test1#测试用看这一步是否运行了

sleep  20

echo "start tomcat....."

mkdir /www/wwwroot/installpageback/test2#测试用看这一步是否运行了

sh /www/wwwroot/installpageback/apache-tomcat-9.0.88/bin/startup.sh

sleep  20

echo "start tomcat complete"

mkdir /www/wwwroot/installpageback/test3#测试用看这一步是否运行了

好了。编译项目就OK了。也算是用了另外一种方式解决了这个自动发布问题。。。。