13

JNIを使​​用するデスクトップアプリケーションがあり、JVMがクラッシュすることがあります。幸い、JVMはhs_err_pidXXXX.logファイルを生成します。これは、このようなエラーのデバッグに非常に役立ちます。ただし、常に現在の作業ディレクトリに移動しているように見え、他のログファイルはすべて特定の「ログファイルの場所」に移動するため、そこから掘り下げるのは面倒です。

それらの「クラッシュダンプ」ファイルに別の場所を指定することは可能ですか?どのように?

4

2 に答える 2

16

Joonas、

HeapDumpPathはヒープダンプに対して機能しますが、それはあなたの質問に対する答えではありません。ヒープダンプとjvmクラッシュログは2つの別個のものです。

jvmクラッシュログの宛先を変更するには、次のオプションを指定してjavaを実行します。

-XX:ErrorFile=/path/to/file.

Path / to / fileは、JVMクラッシュログを出力する場所です。

于 2012-05-03T15:24:36.177 に答える
7

デフォルトでは、ヒープダンプはVMの作業ディレクトリにあるjava_pidpid.hprofというファイルに作成されます。-XX:HeapDumpPath =オプションを使用して、代替ファイル名またはディレクトリを指定できます。たとえば、-XX:HeapDumpPath = / disk2 / dumpsを使用すると、ヒープダンプが/ disk2/dumpsディレクトリに生成されます。

于 2009-12-10T10:58:15.343 に答える