UNIXサーバーでJavaプログラムを正常に終了させようとしています。jarファイルがあります。これは午前中にcronジョブから開始します。次に、夕方にシャットダウンしたいときに、PIDを見つけてを呼び出すスクリプトを呼び出すcronジョブがありますkill -9 <PID>
。ただし、この方法で終了すると、シャットダウンフックがアクティブになっていないようです。私も試しましたがkill <PID>
(-9はありません)、同じ問題が発生します。シャットダウンフックが呼び出されることを確認するにはどうすればよいですか?あるいは、毎日私のプロセスを殺すためのより良い方法があるかもしれません。
class ShutdownHook {
ShutdownHook() {}
public void attachShutDownHook() {
Runtime.getRuntime().addShutdownHook(new Thread() {
@Override
public void run() {
System.out.println("Shut down hook activating");
}
});
System.out.println("Shut Down Hook Attached.");
}
}