6

Ant を使用して、Jenkins を介して JBoss 5 サーバーを起動/シャットダウンします。Ant java spawn と fork は「true」に設定されているため、コマンドはバックグラウンドで実行されます。

Jenkins はサーバーを正常に起動し、2 分間待機し (Jenkins の「スリープ」コマンド)、スリープ後に何らかの奇妙な理由でサーバーをシャットダウンします。sleep コマンドは、ビルド ジョブの最後のステップです。シャットダウンは次のように述べています。

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

私はそれをググって、提案された -Xrs コマンドを試しましたが、役に立ちませんでした。ここで何が起きてるの?

4

2 に答える 2

11

Jenkins には、ジョブによって作成されたすべてのプロセスを強制終了するプロセス ツリー キラーと呼ばれるものがあります (spawn と fork が true に設定されて開始されたものも含む)。

この動作にはいくつかの回避策があります。

  • プロセスツリーキラーを無効にする

    -Dhudson.util.ProcessTreeKiller.disable=true

また

  • 環境を設定します。JBOSS プロセスの var BUILD_ID=dontKillMe。

    export BUILD_ID=dontKillMe

ProcessTreeKill wiki 記事またはjenkins JIRAを参照して、この問題のさまざまな回避策を見つけることができます。

于 2013-01-29T14:34:04.240 に答える