【发布时间】:2014-08-04 11:27:42
【问题描述】:
在我的 Mac OS-X Mavericks 上,我安装了安装了 JRE 1.6 的 Eclipse Java Enterprise Ed Helios 版本。
我将我的 Eclipse 版本更新为 Eclipse Kepler Java Enterprise Edition (Eclipse Kepler v 4.3)
然后我安装了 Google App Engine 组件(基本上是从https://developers.google.com/eclipse/docs/install-eclipse-4.3 下载并安装 Google Pugin for Kepler ...)
当我启动新的 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的分步说明安装了它
我在 Eclipse 中设置 SDK 版本,方法是转到 Preferences->Java->Installed JREs(并导航到包含新 JRE 的文件夹)
但是,当我重新启动 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
现在,当我开始 Eclipse 时,会出现这个不同的错误。在线查看似乎我需要向 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 选项使用不同的值...
还可以在启动时将 java 版本设置为 1.7,方法是将以下行添加到 ~/.bash_profile
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 或更高版本”
【问题讨论】:
标签: java eclipse macos google-app-engine java-7