在Mac OS-X Mavericks上,我安装了带有JRE 1.6的Eclipse Java Enterprise Ed Helios版本。

我将Eclipse版本更新为Eclipse Kepler Java Enterprise Edition(Eclipse Kelpler v 4.3)

然后,我安装了Google App Engine组件(基本上从https://developers.google.com/eclipse/docs/install-eclipse-4.3下载并安装了Kepler的Google Pugin ...)

当我启动新的Eclipse Kepler时,出现以下错误(如下图所示),表明我的JRE(v 1.6)已过期,我需要版本1.7.0+

所以我从http://www.oracle.com/technetwork/java/javase/downloads/index.html下载了最新的JDK v 1.8

我通过http://docs.oracle.com/javase/7/docs/webnotes/install/mac/mac-jdk.html的逐步说明安装了该软件

我通过在Preferences-> Java-> Installed JRE(然后导航到包含新JRE的文件夹)中在Eclipse中设置SDK版本。

但是,当我重新启动Eclipse时,仍然出现相同的错误,即(JRE必须为1.7.0或更高)

****有什么想法我缺少什么设置或需要设置什么? ****

这是我尝试过的运行日志和屏幕截图:

最新系统首选项(java)设置和Eclipse Java首选项的屏幕截图:



这是eclipse.ini的内容

-startup ../../../plugins/org.eclipse.equinox.launcher_1.3.0.v20130327-1440.jar
--launcher.library
../../../plugins/org.eclipse.equinox.launcher.cocoa.macosx_1.1.200.v20140116-2212
-product
org.eclipse.epp.package.jee.product
--launcher.defaultAction
openFile
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
--launcher.appendVmargs
-vm /Library/Java/JavaVirtualMachines/jdk1.7.0_60.jdk/Contents/Home/jre/lib/server/libjvm.dylib
-vmargs
-Dosgi.requiredJavaVersion=1.6
-XstartOnFirstThread
-Dorg.eclipse.swt.internal.carbon.smallFonts
-XX:MaxPermSize=256m
-Xms40m
-Xmx512m
-Xdock:icon=../Resources/Eclipse.icns
-XstartOnFirstThread
-Dorg.eclipse.swt.internal.carbon.smallFonts

更新:
我编辑了eclipse.ini文件,以确保jvm 1.7的-vm规范跨越了两行,如@manouti所建议
-vm
/Library/Java/JavaVirtualMachines/jdk1.7.0_60.jdk/Contents/Home/jre/lib/server/libjvm.dylib

现在,当我开始蚀时,会得到这个不同的错误。在线检查似乎我需要向JVM初始化文件添加一些功能....

我检查了以下博客http://burrsutter.blogspot.com/2013/12/eclipse-does-not-contain.html,并根据此处发布的建议对我的JVM 7 info.plist文件的功能部分进行了如下更新:
<key>JVMCapabilities</key>
      <array>
            <string>CommandLine</string>
            <string>JNI</string>
            <string>BundleApp</string>
            <string>WebStart</string>
            <string>Applet</string>
      </array>

该博客还建议eclipse.ini中的-vm选项使用不同的值...

通过在〜/ .bash_profile中添加以下行,还将启动时将Java版本设置为1.7。
export JAVA_HOME=`/usr/libexec/java_home -v 1.7`

仍然会收到“不包含JNI_CreateJavaVM符号”上方的功能错误

我尝试将eclipse.ini中的-vm行更改为burrsutter博客http://burrsutter.blogspot.com/2013/12/eclipse-does-not-contain.html中建议的行,即将eclipse.ini中的-vm设置为:
-vm
/Library/Java/JavaVirtualMachines/jdk1.7.0_60.jdk/Contents/Home/bin/java

有了这个我继续得到上面显示的功能错误...

也尝试过
-vm
/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home/bin/java

...有了这个原始错误又回来了,即“需要JRE版本是1.6.0版本1.7.0或更高版本”

最佳答案

确保在CLASSPATH和PATH环境变量中设置了新的JDK。 Eclipse可能仍在使用旧的JDK1.6。您可以调用java -version来检查计算机上使用的默认版本。还要确保Eclipse安装目录中的eclipse.ini文件不会使用JDK1.6启动。您可以编辑eclipse.ini,以便使用JDK1.8启动它:

-vm
/path/to/java1_8

10-06 10:15
查看更多