如何更改所有 Eclipse 工作区的默认 JRE?

新手上路,请多包涵

我在 C:\Program Files (x86)\Java\jre6 中有一个 JRE,这是我安装 Eclipse 时唯一的一个。我随后在 C:\home\SFTWR\jdk1.6.0_21 中安装了一个完整的 JDK,并将我的 JAVA_HOME 环境变量更改为那个。但是,每次我启动一个新的 Eclipse 工作区时,它只会选择旧的 JRE,我必须手动删除它并添加新的。

如何将我的 Eclipse 安装绑定到新的 JDK,以便每个新的工作空间都指向它?我检查了 eclipse.ini 但没有提到要转到哪个 JRE。

更新:

我进入 Prefs->Java->Installed JRE s,添加新位置,标记为默认,删除另一个,它只对当前工作空间有效。但是,当我打开一个新工作区时,只有旧的 JRE 可用。所以这并没有改变适用于所有(至少是新的)工作区的核心 Eclipse 配置

原文由 amphibient 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 898
2 个回答

终于明白了: Eclipse 获取 JRE 的方式是使用系统的 PATH

我之前根本没有 C:\home\SFTWR\jdk1.6.0_21\bin 在路径中,我确实有 C:\Program Files (x86)\Java\jre6\bin 。我将 JRE_HOMEJAVA_HOME 都设置为 C:\home\SFTWR\jdk1.6.0_21 但这两个都不重要。我猜 Eclipse 在 哪里(或 UNIX/Linux 上)查看 Java 在路径中的位置,并采用了 java.exe 所属的 JRE。就我而言,尽管我已经完成了所有配置调整(包括 eclipse.ini -vm 选项,如上所述),但它仍然停留在路径中。

我从路径中删除了旧的 JRE bin,放入新的,它适用于所有工作区。

原文由 amphibient 发布,翻译遵循 CC BY-SA 3.0 许可协议

Installed JREs 用于为您的下游 Java 项目和服务器执行哪些 JRE。至于用于执行由您的环境、历史记录和 eclipse.exe 二进制文件控制的 Eclipse 进程(工作台)本身的 JVM 或 JRE。因此 eclipse.exe 本身决定了 Eclipse 将使用什么 JRE 执行自身,而不是安装的 JRE 首选项,因为在 OSGi 框架启动并运行之前不会读取这些首选项,它是在选择 JVM/JRE 之后加载的。

因此,对于新工作区,Eclipse 将使用其当前正在执行的 JRE 来填充 JRE 首选项。

我知道的最好方法是强制 eclipse.exe 使用您通过 -vm 开关告诉它的 JRE。所以在你的 eclipse.ini 中这样做:

 -startup
plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.100.v20110502
-vm
/path/to/exactly/what/jre/you/want/as/default/javaw.exe
...

原文由 gamerson 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题