Linuxで動作している私のJavaプログラムは、シャットダウンする前にいくつかのファイルハンドル(実際にはデバイス)を閉じる必要があるため、JVMにシャットダウンフックが追加されています。しかし、java.util.logging.LogManager
にもシャットダウンフックがあり、シャットダウンする前にシャットダウンする傾向があり、シャットダウンプロセスについて何もログに記録できないことに気付きました。`java.util.logging.LogManager`のシャットダウンが早すぎるのを防ぐことができますか?
シャットダウン中にログを実行できるようにLogManagerがシャットダウンフックをインストールしないようにする方法はありますか?準備ができたらクリーンアップするよう教えてください。
私はこれを考慮しましたが、それは多くの作業であるように見えます。 LogManagerのサブクラス化は理想的ですが、デフォルトのコンストラクタはシャットダウンフックが追加された場所で、呼び出されることを防ぐ手段はありません。 – tyrel
時にはクラスを再実装するためにJava APIからコード全体をコピーしてから、必要な部分を修正しました。それはかなりではありませんが、それは動作します。 – markspace
ええ、JDKのソースコードライセンスが私にそれを許可するかどうかは不明です。 – tyrel