要打开“Eclipse”,您需要安装传统的Java SE 6运行时

刚刚在Yosemite上安装了一个新版本的Kepler 64bit“for Java Developers”,第一次启动就出现这个错误。 任何想法如何解决? 真的不想降级我的Java版本!

我刚刚在Yosemite的另一个基于Eclipse的应用程序中遇到了这个问题,并想出了如何在安装传统Java SE 6 JRE的情况下运行应用程序。 以下是帮助其他开发者获得Eclipse工作的步骤。

先决条件

$ sw_vers -productVersion 10.10.1 $ java -version java version "1.8.0_25" Java(TM) SE Runtime Environment (build 1.8.0_25-b17) Java HotSpot(TM) 64-Bit Server VM (build 25.25-b02, mixed mode) 

其他configuration可能工作; 这是我的环境。

脚步

  1. 编辑安装后的JDK的info.plist:

     $ sudo nano `/usr/libexec/java_home -V`/../info.plist 
  2. 更改以下部分:

     <key>JVMCapabilities</key> <array> <string>CommandLine</string> </array> 

     <key>JVMCapabilities</key> <array> <string>JNI</string> <string>BundledApp</string> <string>WebStart</string> <string>Applets</string> <string>CommandLine</string> </array> 
  3. 尝试从命令行打开应用程序(不知道这是否是必要的,但我做了什么)

    你应该得到一个错误“(app)无法打开,因为它来自一个不明身份的开发者”。

  4. 进入系统偏好设置:安全设置(一般),你应该看到最近的应用程序旁边的button“打开任何” – 点击此button打开应用程序。

这将打开Eclipse,无需单独下载旧版Java SE 6文件。

笔记

当我在MTGBrowser(下面)上解决这个问题时,我也遵循了build议,通过将以下部分添加到“Eclipse”键来更改应用程序的info.plist:

 <string>-vm</string><string>/Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home/bin/java</string> 

但是,我不确定这是严格要求。 无论如何,这还不够 – 我也必须改变JDK info.plist和安全性,如上所述,以获得完整的解决scheme。

参考

我几个小时面对这个麻烦。 我遵循了我可以在众多论坛上find的所有build议,但都没有成功。 我解决了这个问题,只需安装1.8.x JDK而不是JRE,尽pipe没有为Java开发的意图。 我想日食需要这个。

我最终放弃并从这里下载Java 6:

http://support.apple.com/kb/DL1572?viewlocale=en_US&locale=en_US

显然,这似乎与最新的Java版本(我也安装了版本8更新25)共存,而版本8显示为我正在运行的版本

https://www.java.com/en/download/installed.jsp

我不清楚这一点的安全隐患,但会更喜欢另一种解决scheme,如果有人发现比安装6更好的解决scheme,请让我知道。

我在使用macOS Sierra(版本10.12.3)的MacBook上安装Eclipse时收到了这个错误,该版本显然没有安装任何java。 我通过安装Java版本1.8 JDK使问题消失,然后在安装Eclipse之后没有任何问题。

即在安装之前

 MacBook-Pro:$ java -version No Java runtime present, requesting install. 

并在安装后

 MacBook-Pro:$ java -version java version "1.8.0_121" Java(TM) SE Runtime Environment (build 1.8.0_121-b13) Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode) 

tldr; 此错误可能表示您没有Java,并且可以通过安装最新版本的Java而不是“传统”版本来修复

我在Yosemite上安装了JDK 7,升级Eclipse到Luna解决了这个问题

我的Mac坠毁,重启后,我有同样的问题。 原来由于某种原因文件/usr/libexec/java_home丢失。 将它们符号链接到/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java_home ,Eclipse现在开始没有任何抱怨。