解决Jenkins默认终止Shell产生服务进程的问题

1、Windows环境

  • Jenkins进行Build steps的使用Execute Windows batch command启动微服务(Jar包),Jenkins会默认终止Shell产生的服务进程,而在命令行能够正常运行的服务进程。

1.1 使用命令行启动服务是正常

  • 使用命令行执行
  • 正常启动nacos服务
  • 正常输出日志

1.2 使用Jenkins启动服务则会自动关闭服务

  • 设置启动服务脚本如下:
  • Jenkins输出成功
  • 实际服务没启动,在初始化时就被Jenkins关闭了
  • 输出日志

1.3、 解决方案

  • 修改Execute Windows batch command的脚本,在脚本首行加入 BUILD_ID=dontKillMe,告诉Jenkins不要关闭进程。
shell 复制代码
rem 设置局部变量,不让Jenkins自动关闭以下进程
set BUILD_ID=dontKillMe

rem 设置执行的jar包文件
set JAR_FILE_REGISTER=E:\jar\pigx-register.jar

rem 关闭已启动的进程
for /f "tokens=5" %%a in ('netstat -ano ^| findstr :8848') do (
    taskkill /F /PID %%a
)

rem 运行Jar包
start "register" /b  java -Dfile.encoding=utf-8 -Xms256m -Xmx256m -jar %JAR_FILE_REGISTER% > app.log 2>&1
相关推荐
非凡ghost3 小时前
视频剪辑不用等渲染,这款开源工具让切分合并秒级完成
运维·电脑·软件需求
FII工业富联科技服务5 小时前
Omniverse 数字孪生与柔性自动化,如何破解产能与交付、设备与空间的双重困境?
运维·自动化·devops
润滑卫士5 小时前
油液介电常数在线监测:测量原理与油液老化状态评估方法
运维
Rock Chin6976 小时前
把 n8n 接进 Slack:在对话里 @机器人 触发自动化工作流
运维·机器人·自动化
浩浩测试一下6 小时前
Linux 底层知识点 1
linux·运维·服务器
Eloudy6 小时前
全文 - IMEX 第01节 -IMEX overview
运维·服务器·网络
物联网软硬件开发-轨物科技7 小时前
【技术白皮书】光伏清检一体化机器人系统解决方案技术白皮书
大数据·运维·网络·人工智能·机器人
海宇数据7 小时前
零信任架构实战:基于海宇网上踪迹欺诈行为识别构建自动化信贷资信评估网关
运维·人工智能·架构·自动化
忆挽篱笙歌8 小时前
环境变量,本地变量
linux·运维·服务器
码间留白9 小时前
手把手把 GitHub 推上阿里云 ECS:Actions CI/CD 全链路避坑实录(折腾好几天,到 2 分钟见绿)
运维·阿里云·ci/cd·docker·devops·github actions