作业完成时Jenkins杀死JBoss服务器

作业完成时Jenkins杀死JBoss服务器,jboss,jenkins,Jboss,Jenkins,我使用Ant通过Jenkins启动/关闭JBoss5服务器。AntJavaspawn和fork被设置为“true”,所以命令在后台执行 Jenkins成功地启动了服务器,等待两分钟(Jenkins中的“sleep”命令),然后在睡眠后,由于某种奇怪的原因关闭了服务器。sleep命令是构建作业的最后一步。关机显示: 2013-01-29 17:03:39,332 INFO [org.jboss.bootstrap.microcontainer.ServerImpl] Runtime sh

我使用Ant通过Jenkins启动/关闭JBoss5服务器。AntJavaspawn和fork被设置为“true”,所以命令在后台执行

Jenkins成功地启动了服务器,等待两分钟(Jenkins中的“sleep”命令),然后在睡眠后,由于某种奇怪的原因关闭了服务器。sleep命令是构建作业的最后一步。关机显示:

2013-01-29 17:03:39,332 INFO  [org.jboss.bootstrap.microcontainer.ServerImpl] Runtime     shutdown hook called, forceHalt: true

我在谷歌上搜索了一下,并尝试了建议的-Xrs命令,但没用。这里发生了什么?

Jenkins有一种称为进程树杀手的东西,它将杀死作业创建的所有进程(即使是那些以“spawn”和“fork”设置为true开始的进程)

这种行为有一些变通方法

  • 禁用进程树杀手

    -Dhudson.util.ProcessTreeKiller.disable=true

  • 设置环境。JBOSS进程中的var BUILD_ID=dontKillMe

    export BUILD\u ID=dontKillMe


您可以浏览wiki文章或查找此问题的各种解决方法。

来源(评论)建议使用其他环境变量,显然适用于Jenkins的旧版本。对我来说,在我开始使用JENKINS(_服务器)_COOKIE之前,它不起作用。

在JENKINS 1.653上也不起作用,还有其他可能的解决方法吗?