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

2022-09-01 02:57:44

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

如何将 Eclipse 安装绑定到新的 JDK,以便每个新工作区仅指向该工作区?我检查了一下,但没有提到要去哪个JRE。eclipse.ini

更新:

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


答案 1

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

我以前根本没有这条路,我确实有.我两者都设置好了,但这两个都不重要。我猜Eclipse确实(大意是)java(或者在UNIX / Linux上的位置,以查看Java在路径中的位置,并采用了属于它的JRE。在我的情况下,尽管我做了所有的配置调整(包括上面建议的-vm选项),它仍然坚持路径中的内容。C:\home\SFTWR\jdk1.6.0_21\binC:\Program Files (x86)\Java\jre6\binJRE_HOMEJAVA_HOMEC:\home\SFTWR\jdk1.6.0_21java.exeeclipse.ini

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


答案 2

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

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

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

-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
...

推荐