如何使用 Oracle 新的 1.7 JDK for mac 运行 Eclipse?

2022-08-31 23:58:23

我正在尝试让新的1.7 JDK与Eclipse一起使用(这是Oracle的官方版本)。

我并不是说只是将Eclipse指向它,这样你就可以在项目中使用它,这工作得很好,但实际上使用1.7 JVM运行Eclipse。

我已经将新的JVM移到了Java Preferences中列表的顶部,但Eclipse仍然从1.6开始。如果我在Java首选项中禁用了1.6,则在双击Eclipse后立即看到一个对话框,说“无法创建Java虚拟机”。

编辑:我在 eclipse 中添加了以下内容.ini就在 -vmargs 之前:

-vm
/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home/bin/java

然而,在 Eclipse 安装详细信息对话框中,我仍然看到:

java.runtime.version=1.6.0_31-b04-415-11M3646

编辑2:这是我的日食文件.ini的内容:https://gist.github.com/2512578


答案 1

还有另一种方法。请在 .ini 文件中的 -vmargs 之前添加以下两行:

-vm 
{YOUR_JAVA_7_HOME}/jre/lib/server/libjvm.dylib

(请记住,这些必须是单独的行),并在“Info.plist”文件中添加相应的条目(在“Eclipse”键下添加或修改数组项 - 每个字符串子元素对应于一个命令行参数)。

...
<key>Eclipse</key>
<array>
<string>-vm</string>
<string>/{MY_VM_HOME}/jre/lib/server/libjvm.dylib</string>
...
</array>

或者,从终端运行 eclipse 时仅使用命令行参数。-vm {YOUR_JAVA_7_HOME}/lib/server/libjvm.dylib


答案 2

我刚刚在 https://bugs.eclipse.org/bugs/show_bug.cgi?id=339788 添加了我的评论,关于无法在OS X上使用新的Oracle JDK和Eclipse.使用eclipse中的-vm选项.ini不起作用。我发现解决此问题的唯一方法是使用以下 shell 脚本:

#!/bin/sh
#
export JAVA_HOME=/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home
LAUNCHER_JAR=/Applications/eclipse/plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar

java \
-showversion \
-XX:MaxPermSize=256m \
-Xms1024m \
-Xmx1024m \
-Xdock:icon=/Applications/eclipse/Eclipse.app/Contents/Resources/Eclipse.icns \
-XstartOnFirstThread \
-Dorg.eclipse.swt.internal.carbon.smallFonts \
-Dosgi.requiredJavaVersion=1.5 \
-jar $LAUNCHER_JAR

使用 http://mathiasbynens.be/notes/shell-script-mac-apps 上的步骤,我将上面的脚本转换为可以保留在扩展坞上的应用程序。