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

测试结果:

执行成功,问题解决了!

相关推荐
jieyucx25 分钟前
Docker 入门第一阶段:建立正确认知与初体验
运维·docker·容器
qetfw2 小时前
CentOS 7 基础环境配置
linux·运维·centos
jieyucx3 小时前
Docker 入门第二阶段:掌握日常命令
运维·docker·容器
随性而行3603 小时前
微信API接口与AI自动化:开发者的实现思路
运维·服务器·开发语言·人工智能·微信·自动化
胖兔纸25 小时前
OpenStack 1.7.2 & Ceph 9.2.1 运维命令
运维·ceph·openstack
不会C语言的男孩6 小时前
Docker 在嵌入式设备中的常用玩法
运维·docker·容器
ylscode6 小时前
CVE-2026-31694 漏洞深度分析:Linux 内核 FUSE 组件存在本地提权风险,普通用户可直取 root 权限
linux·运维·服务器
智脑API平台7 小时前
Codex CLI 怎么用 .env 配置 API Key?本地项目和自动化脚本接入教程
运维·自动化
weixin_307779137 小时前
Linux下Docker Compose里运行的MySQL数据库故障诊断Shell脚本
linux·运维·mysql·docker·自动化
流浪0018 小时前
Git篇(三):吃透远程协作:SSH 密钥、分支、标签全流程实战指南
运维·git·ssh