9
13

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Mac OS Xのアップデート後にEclipseが起動しなくなった時の対応

Last updated at Posted at 2016-04-25

#経緯
Mac OS X El Capitanにアップデート後にEclipseを起動しようとしたら「"Eclipse.app" を開くには、以前の Java SE 6 ランタイムをインストールする必要があります。」というダイアログが出て起動できませんでした。
スクリーンショット 2016-04-25 14.04.17.png
いや自分、Java SE 8インストール済みなんすけど…

$ java -version
java version "1.8.0_31"
Java(TM) SE Runtime Environment (build 1.8.0_31-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.31-b07, mixed mode)
$ /usr/libexec/java_home -V
Matching Java Virtual Machines (1):
    1.8.0_31, x86_64:    "Java SE 8"    /Library/Java/JavaVirtualMachines/jdk1.8.0_31.jdk/Contents/Home

/Library/Java/JavaVirtualMachines/jdk1.8.0_31.jdk/Contents/Home

JavaのFAQページによると、このダイアログが出る原因はApple側の問題とか

原因

これは、通常アプリケーションがAppleによって提供されたレガシーのJava 6を必要とするためです。この問題の解決策については、http://support.apple.com/kb/DL1572 を参照してください。

…で、リンク先のAppleのサポートページ見ると「Java SE 6入れてね(はぁと」としか書いていませんでした。

スクリーンショット 2016-04-25 14.36.09.png

さすがApple!

#対応

普通に考えて新しいバージョンのJava SEが入っていれば問題ないはずなので、わざわざJava SE 6をインストールしなくても起動できるようにする方法を書いておきます。

##JDKのInfo.plistに設定を追記する
JDKのインストールフォルダにある設定ファイルの内容を編集します。
今回の環境では以下の場所に置いてありました。

/Library/Java/JavaVirtualMachines/jdk1.8.0_31.jdk/Contents/Info.plist

どうやらJVMの動作設定がコマンドラインのみになっていたことが原因だったようです。

Info.plist
    <key>JVMCapabilities</key>
        <array>
            <string>CommandLine</string>
        </array>

Info.plistのJVMCapabilitiesに必要な設定を追記します。

Info.plist
    <key>JVMCapabilities</key>
        <array>
+           <string>JNI</string>
+           <string>BundledApp</string>
+           <string>WebStart</string>
+           <string>Applets</string>
            <string>CommandLine</string>
        </array>

設定保存後、一旦ログアウトしてログインしなおせばダイアログが出なくなり、Eclipseを起動できるようになります。

#参考
YosemiteまたはEl Capitanで最新のJavaバージョンをインストールした後でもJavaをインストールするように求められるのはなぜですか。
Eclipse Kepler for OS X Mavericks request Java SE 6 - Stack Overflow

9
13
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
13

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?