解决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

测试结果:

执行成功,问题解决了!

相关推荐
MAVER1CK1 天前
Docker容器创建好后修改容器配置
运维·docker·容器
NightReader1 天前
CPU 高使用率,怎么降下来
运维·服务器
SWAGGY..1 天前
Linux系统编程:(七)Makefile入门:轻松掌握编译自动化
linux·运维·自动化
开开心心就好1 天前
免费流畅的远程控制实用工具
linux·运维·服务器·网络·智能手机·excel
代码熬夜敲Q1 天前
ENSP 网络工程实验
linux·运维·服务器
銳昊城1 天前
项目七: 配置与管理Web服务器(2) C2
运维·服务器
Muyuan19981 天前
30.通过Claude code做项目系统测试
运维·服务器·人工智能·fastapi
yyuuuzz1 天前
aws的核心概念与常见使用场景
运维·服务器·网络·云计算·aws
KivenMitnick1 天前
LovelyERes:AWD适用的蓝队综合工具
运维·安全·网络安全
赵药师1 天前
dpkg: warning: files list file for package ‘libselinux1:amd64‘ missing;
linux·运维·服务器