当工作完成时,Jenkins会杀死JBoss服务器

use*_*582 6 jboss jenkins

我使用Ant通过Jenkins启动/关闭JBoss 5服务器.Ant java spawn和fork设置为"true",因此命令在后台执行.

Jenkins成功启动服务器,等待两分钟(Jenkins中的"睡眠"命令),然后在睡眠之后出于某种奇怪的原因关闭服务器.sleep命令是构建作业的最后一步.关机说:

2013-01-29 17:03:39,332 INFO  [org.jboss.bootstrap.microcontainer.ServerImpl] Runtime     shutdown hook called, forceHalt: true
Run Code Online (Sandbox Code Playgroud)

我google了它并尝试了建议的-Xrs命令,但它没有帮助.这里发生了什么?

ben*_*n75 11

Jenkins有一个称为进程树杀手的东西会杀死作业创建的所有进程(甚至那些以spawn和fork设置为true的进程).

这种行为有一些解决方法.

  • 禁用进程树杀手

    -Dhudson.util.ProcessTreeKiller.disable=true

要么

  • 设置环境.JBOSS过程中的var BUILD_ID = dontKillMe.

    export BUILD_ID=dontKillMe

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