Eclipse インストール時に Failed to create the Java Virtual Machine.


はじめに

Mac に Eclipse をインストールしようとしたら "Failed to create the Java Virtual Machine." って怒られました。

インストール時にこんな屈辱を受けたのは初めてだ

もちろん Java は入ってる

結論から言うと、案の定いつものやつ

-vm を ini ファイルに設定するあれだ

手順

最初に注意点

原因がよくわからないが、 ini ファイルを vim で修正するとこんなエラーが出る。

vim でやる限り、何としてでも "Eclipse Installer.app" をゴミ箱にぶちこんでやらないと気が済まないらしい。

ふざけんな、という気持ちを押し込めつつ、GUI でやるとうまくいきます。

謎い

手順概要

  1. "Eclipse Installer.app" を適当な場所にコピー
  2. Finder で "Eclipse Installer.app" を右クリック > パッケージの内容を表示 > Contents/Eclipse/eclipse-inst.ini をテキストエディタで開く
  3. eclipse-inst.ini に Java8 のパスを設定

1. "Eclipse Installer.app" を適当な場所にコピー

通常 eclipse-inst-mac64.dmg をダウンロードしてクリックすると、eclipse installer が /Volumes/Eclipse Installer にマウントされるはず。

で、その中に "Eclipse Installer.app" があるので、それを適当な場所にコピーする。

ここは GUI でも CLI でもいい。

なお、 /Volumes/Eclipse Installer 以下は Read Only なので、コピーしないと編集できません。

2. Finder で "Eclipse Installer.app" を右クリック > パッケージの内容を表示 > Contents/Eclipse/eclipse-inst.ini をテキストエディタで開く

ここは特に補足説明なし。

前述の通り vim でやらないように

3. eclipse-inst.ini に Java8 のパスを設定

eclipse-inst.ini にこの二行を追加する。

-vm
/Users/tommarute/.jenv/versions/1.8/bin/java

※ もちろん Java のパスはご自身の環境のものを設定してください

なぜ Java8 かというと、自分の環境の最新 (14) だとインストーラーが動かなかったから。

Java9 だと動くのか、とかは試していない。

Java8 がない場合はこんな感じで入れてください。

$ brew tap AdoptOpenJDK/openjdk

# 古いコマンド
$ brew cask install adoptopenjdk8
# 新しい方
$ brew install adoptopenjdk8 --cask

蛇足ですが、最新の Java が入っている場合は jenv などの管理ツールがあったほうが良いでしょう。

インストーラーを再実行

ini ファイルの修正をしたら Finder から "Eclipse Installer.app" をダブルクリックしよう。

いつもの画面が見れるはず。

Thanks,