Java VM のダンプファイル(.hprof
)の解析に便利な Eclipse Memory Analyzer を導入する際にversion 1.8.0_261 of the jvm is not suitable
のエラーがでる問題の解決方法についてまとめます。
まず、以下のリンク先から Eclipse Memory Analyzer のスタンドアロンバイナリをダウンロードします。
参考:Eclipse Memory Analyzer Open Source Project | The Eclipse Foundation
続いて、依存関係を満たすバージョンの Java をダウンロードします。 今回は、以下のダウンロード元から Java 17 を取得しました。
ダウンロードしたインストーラを実行したところ、ファイルはC:\Program Files\Java\jdk-17\
に展開されました。
次に、ダウンロードした Eclipse Memory Analyzer を展開し、MemoryAnalyzer.ini
に以下の行を追加します。
-vm
C:\Program Files\Java\jdk-17\bin\javaw.exe
これで、Eclipse Memory Analyzer が使用する Java のバージョンを Java 17 に指定することができ、version 1.8.0_261 of the jvm is not suitable
のエラーを回避できます。
修正後のMemoryAnalyzer.ini
は以下のようになりました。
# MemoryAnalyzer.ini
-startup
plugins/org.eclipse.equinox.launcher_1.6.400.v20210924-0641.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.2.700.v20221108-1024
-vm
C:\Program Files\Java\jdk-17\bin\javaw.exe
-vmargs
--add-exports=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED
-Xmx1024m
これで、 MemoryAnalyzer.exe を起動できるようになりました。