开发者社区> 问答> 正文

jenkins 解决构建成功后进程消失的问题:配置报错 

jenkins 布署环境:jenkins.war + tomcat springboot maven项目。打成jar包之后,调用服务器端的a.sh脚本,将jar包归结至一处,关闭正在运行的服务,然后调用专门的b.sh start srvname这样进行启动。 在服务器 a.sh 是完全可以将服务启动完成的。 使用jenkins构建之后,服务启动完成后,jenkins会将所有的有服务kill掉。   已经尝试过方法 : 1,java -Dhudson.util.ProcessTree.disable=true -jar jenkins.war  这种方法。因为是在TOMCAT中启动的,所以修改catalina.sh JAVA_OPTS的参数实现此方法  结果无效。 2, 在execute shell中加入BUILD_ID=DONTKILLME  已经尝试无效 3, 有资料说修改 /etc/sysconfig/jenkins 这种方式也不靠谱 4,临时改变BUILD_ID值,也无效果  

展开
收起
kun坤 2020-06-04 10:24:31 1742 0
1 条回答
写回答
取消 提交回答
  • 第一个问题,springboot有没有后台启动,第二个jenkins不会kill掉进程的,应该是你脚本的问题啊######回复 @joker游戏 : 恩,接下来,我也打算整合docker了。哈哈。######回复 @林纳斯脱袜子 : 我猜的是jenkins没有正确启动脚本,或者因为权限限制了jenkins操作,或者是执行目录的变更导致shell语句失效,各个排查,或者贴出你的shell,我这边是用jenkins整合docker的,不会出现你这种情况######谢谢,脚本没有问题。自己单独执行脚本,是可以完全启动的。######export BUILD_ID=dontKillMe######回复 @simon西门 : 你把执行脚本和上传的,分开两个SSHServer处理就可以了######回复 @林纳斯脱袜子 : 后来怎么解决的,我也遇到了。######谢谢,试了不可。######请教一下,如何解决的######请教一下这么解决的,我也遇到同样的问题,无法解决,我就是按照先上传,然后再执行脚本的,也是两个sshserver处理的,怎么就不行呢######回复 @林纳斯脱袜子 : 还有一个原因,我的jenkins版本不支持在ssh server中执行脚本######回复 @林纳斯脱袜子 : 我现在用ssh server远程传输文件,然后执行post steps执行shell脚本,就是ssh site执行shell脚本,遇到问题跟你描述一样,无法解决。。。######把上传和执行脚本分开两个步骤处理就可以了。实测有效。

    2020-06-04 13:31:21
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
服务上云加速大家居产业C2M进程 立即下载
Alibaba Cloud CodePipeline 基于Jenkins的CI / CD探索之路 立即下载
Android应用-启动速度和内存优化实践 立即下载