安装java没有效果(jre或jdk,来自oracle网站的1.8)

时间:2015-03-12 22:42:19

标签: java eclipse macos osx-mavericks

我正在研究OS X Mavericks 10.9.5。我已经在OSX上安装了jdk 1.6。我正在尝试安装java 1.8 jre以使用最新版本的Eclipse。我只是去了oracle网站并获得了dmg。

安装正常,没有错误。

然而,最新版本的Eclipse继续使用旧版本。来自终端java -version的同一故事已返回java version "1.6.0_65",而which java已返回/usr/bin/java这是指向/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin/java的链接,因此我删除了该链接,并将其重新创建为/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/java }似乎是java version "1.8.0_40"

此时eclipse会返回错误:

The JVM shared library "/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/../lib/server/libjvm.dylib"
does not contain the JNI_CreateJavaVM symbol.

这完全不准确,因为简单

grep JNI_CreateJavaVM /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/../lib/server/libjvm.dylib

返回

Binary file /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/lib/server/libjvm.dylib matches

我还尝试将该路径添加到Eclipse.app目录中的info.plist,但此时没有任何工作,我没有选择......

有什么建议吗?

2 个答案:

答案 0 :(得分:7)

我认为问题在于链接。 /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/java链接到safari的java插件,这与java的常规版本不同。

更改链接后,您将链接从有效的jvm更改为插件。

java -version返回java的默认版本,在Mac上为jdk 6,并附带你的mac。要获取所有版本的java的位置,请运行/usr/libexec/java_home,这在我的Mac上会导致/Library/Java/JavaVirtualMachines/jdk1.8.0_40.jdk/Contents/Home

列出所有Java安装的另一种方法是打开Java控制面板,该面板应该可以从“系统偏好设置”中打开。

希望这有帮助!

答案 1 :(得分:1)

您可以使用-vm开关在Unix和bin/java下指出任何Java VM 可执行文件bin\javaw.exe。然后,它将自动使用可执行文件的路径(最多bin)作为Eclipse运行的VM的基础。请注意,您可能仍需要将首选项和/或项目设置(在项目属性或配置窗口中键入JRE)设置为相同或任何其他JRE。