JVMクラッシュログが作成される場所を構成する必要があります。彼らが持っている名前(hs_err_pid.log)は好きですが、特定のフォルダに作成したいです。
here では、
-XX:ErrorFile=./hs_err_pid<pid>.log
作成されるFILEを設定するためのparamですが、これをフォルダーに設定すると、ファイルは元の命名規則でそのフォルダーに作成され、機能しません。無視されます。
私はこれを使用して、jvm 1.6を この質問 からクラッシュすることでテストしています。これを使用して:PathDasher dasher = new PathDasher(null);
誰かがこれを達成する方法を知っていますか?
-XX:ErrorFile=/var/log/Java/hs_err_pid%p.log
機能します。
参照 http://www.Oracle.com/technetwork/Java/javase/felog-138657.html
このパラメーターでは環境変数を使用できませんが、ランチャースクリプト(.shや.batなど)で環境変数を使用でき、OSが置換を行います。ただし、これはJVMの起動時に環境変数の値を使用し、後でファイルが書き込まれるときは使用しません。さらに、EclipseでRunプロパティを設定する場合、環境変数は機能しません。
JVMは、クラッシュダンプを保存する中間ディレクトリを作成しません。指定したフォルダが存在しない場合、クラッシュダンプはデフォルトの場所に保存されます。
これを次のように使用する必要があります
Java -XX:ErrorFile =/var/log/Java/hs_err_pid%p.log -Xbootclasspath/p:。クラッシュ
コマンドプロンプトで。ここで、Crashはmy Javaファイルです。