解决jenkins的Exec command命令不生效,或者执行停不下来的问题

Jenkins构建完后将war包通过 Publish Over SSH 的插件发布到服务器上,在服务器上执行脚本时,脚本中的 nohup 命令无法执行,并不生效,我配置的Exec command命令是后台启动一个war包,并输出日志文件。

nohup java -jar /home/jkapp/jkapp/jkapp.war > /home/jkapp/jkapp/jkapp.log 2>&1

在网上查询资料后,有人说命令前要加上source /etc/profile

source /etc/profile

nohup java -jar /home/jkapp/jkapp/jkapp.war > /home/jkapp/jkapp/jkapp.log 2>&1

加上后,Exec command命令确实可以执行了,但是会造成停止不了的现象,导致jenkins连接超时,error报错。

所以加上source /etc/profile的方法并不正确。

于是我在这里卡了很久的时间。

最终我找到了这个问题的完美解决办法:

那就是在Transfer的高级选项中勾选上Exec in pty

测试结果:

执行成功,问题解决了!

相关推荐
小时候的阳光1 小时前
Docker版Percona Xtrabackup全量压缩脚本
运维·docker·容器
4***17543 小时前
Nginx auth_request详解
运维·nginx·xcode
梦想的旅途23 小时前
企业群运营自动化:RPA技术高效赋能
运维·自动化·rpa
hhwyqwqhhwy4 小时前
Linux file->private
linux·运维·服务器
WongKyunban4 小时前
在Linux下制作软件安装包
linux·运维·服务器
hweiyu005 小时前
Linux 命令:parted
linux·运维·服务器
烽火聊员5 小时前
CertificateCreator生成服务器证书server.pfx
运维·服务器
搞全栈小苏5 小时前
Linux下 cmake所有版本适用/下载编译使用教程 附cmake3.26安装包
linux·运维·ubuntu
MyFreeIT6 小时前
Docker Manual
运维·docker·容器
F***E2396 小时前
Nginx实现接口复制
运维·nginx·junit