web-dev-qa-db-ja.com

Eclipse Memory Analyser、しかし常に内部エラーが発生しましたか?

Java.lang.OutOfMemoryError: Java heap space
Dumping heap to Java_pid2584.hprof ...
Heap dump file created [106948719 bytes in 4.213 secs]
Exception in thread "main" Java.lang.OutOfMemoryError: Java heap space
at Java.util.Arrays.copyOf(Arrays.Java:2760)
at Java.util.Arrays.copyOf(Arrays.Java:2734)
at Java.util.ArrayList.ensureCapacity(ArrayList.Java:167)
at Java.util.ArrayList.add(ArrayList.Java:351)
at Main.main(Main.Java:15)

しかし、Eclipse Memory AnalyserでヒープダンプJava_pid 2584.hprofを開くと、常にメッセージが表示されます。

An internal error occurred during: 
"Parsing heap dump from **\Java_pid6564.hprof'".Java heap space
54
Gavin

問題は、Eclipse Memory Analyzerにヒープダンプファイルを開くのに十分なヒープ領域がないことです。

次のようにして問題を解決できます。

  1. MemoryAnalyzer.iniファイルを開きます

  2. デフォルトの-Xmx1024mをより大きなサイズに変更します

86
codeisee

OS Xでは、MATに割り当てられたメモリを増やすには、Memory Analyzer.appを右クリックしてパッケージの内容を表示する必要があることに注意してください。 MemoryAnalyzer.iniファイルは/ Contents/MacOS /の下にあります。

23
tkincher

MAC OS X El CapitanのEclipseのMemory Analyzerプラグインに関する同じ問題のソリューション。

私は同じ問題に直面していましたが、Eclipseプラグインを使用しており、アプリケーションフォルダーにMemory Analyzerアプリがありませんでした。私のために働いた解決策は:

  1. Eclipseアイコンを右クリックして、[パッケージコンテンツの表示]を選択します。
  2. [コンテンツ]> [Eclipse]に移動します
  3. Eclipse.iniを開きます
  4. 値-Xmx1024mを-Xmx2048mに変更します
  5. Eclipseを再起動します
10
Abhishek Garg

OS X 11.5(El Cap)では、MemoryAnalyzer.app/Contents/MacOS/MemoryAnalyzer.iniの変更は機能しません!これは、別の場所でMemoryAnalyzer.iniを探しているためです。

私のコンピューターでは、以下を探していました。

MemoryAnalyzer.app/Contents/Eclipse/MemoryAnalyzer.iniが、実際の.iniファイルはMemoryAnalyzer.app/Contents/MacOS/MemoryAnalyzer.iniでした。

変更を有効にするには、既存の.iniファイルを新しい場所にコピーします。

MemoryAnalyzerがiniファイルを探している場所を見つけるには、次を実行します。

Sudo su
cd ...MemoryAnalyzer.app/Contents/MacOS/
dtruss ./MemoryAnalyzer 2>&1 | grep ini
10
Russell Cohen

EclipseからMemory Analyzerを使用する場合は、Eclipse.iniファイルを編集して、vm引数を-Xmx1024m以上に増やします。これは私のために働いた。 http://wiki.Eclipse.org/index.php/MemoryAnalyzer/FAQ#Out_of_Memory_Error_while_Running_the_Memory_Analyzer

5
Goodluck

ここでもすべての解決策を試しましたが、同じエラーが発生し、Eclipseが.hprofファイルをテキストファイルとして開くことを試みた理由は、間違ったまたは不明なファイルタイプ/エディターの関連付けが原因でした。

解決策:ファイルを右クリックして、[開く]を選択し、[その他]を選択して、[Eclipse Memory Analyzer]を選択します。

700MBのダンプを処理し、約600MのEclipseヒープで2Gダンプを処理しました。

1
mibrahim

Macを使用している場合は、書き込み可能なパスを指定できる-dataオプションを指定してmat.app 'folder'内で実行可能ファイルを実行してみてください。

cd mat.app/Contents/MacOS
./MemoryAnalyzer -data <writable_path>
1
snowfox

他の人が提案したように、その2つのステップの簡単なプロセス:-

  1. mATインストールディレクトリからMemoryAnalyzer.iniファイルを開きます。

  2. たとえば、デフォルトの-Xmx1024mをより大きなサイズに変更します。 4GBのヒープダンプを分析する必要がある場合は、-Xmx1024mを-Xmx5gまたは-Xmx6gに置き換えることができます。

詳細については、以下を参照してください: https://better-coding.com/solved-Eclipse-mat-Java-heap-space-error/

1