2011-11-04 18 views
14

jvmクラッシュログが作成される場所を設定する必要があります。私は彼らが持っている名前(hs_err_pid.log)が好きですが、それらを特定のフォルダに作成します。jvmクラッシュログファイルの場所を設定する方法

あなたが作成したファイルを設定していますが、フォルダに設定した場合、そのファイルは、元の命名規則とそのフォルダ内に作成されるために

-XX:ErrorFile=./hs_err_pid<pid>.log 

のparamを使用することができていることがわかりますhere

、それは動作しません、それは無視されます。

私は、これを使って、this questionsからjvm 1.6をクラッシュさせてこれをテストしています。 PathDasher dasher = new PathDasher(null);

誰でもこれを達成する方法を知っていますか?

+0

http://stackoverflow.com/questions/1880166/is-it-possible-to-specify-where-jvms-crash-dumps-go –

答えて

18

-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はクラッシュダンプを保存する中間ディレクトリを作成しません。クラッシュダンプは、指定されたフォルダが存在しない場合、デフォルトの場所に保存されます。

+0

javaでこのようなコマンドを実行するにはどうすればよいですか?私はcmdを介してそれを試みたが、成功しなかった –

1

あなたは

のjava -XXとしてこれを使用する必要があります。ERRORFILE =は/ var/log /のJava/hs_err_pid%p.log -Xbootclasspath/P :.コマンドプロンプトでクラッシュ

ここで、クラッシュは私のJavaファイルです。

関連する問題