43

我目前正在尝试调整我的 Eclipse 安装并遇到了“-vm”选项。SO 上的其他帖子提到始终使用最新的可用 JVM 是件好事,因为它们在性能方面不断提高,所以我可能会这样做。我想知道如果您没有指定“-vm”参数,您如何找出运行 JVM Eclipse 的内容。

我在文档中找到了以下内容,但这并没有说明它将如何查找 JVM:

当传递给 Eclipse 可执行文件时,此选项用于定位用于运行 Eclipse 的 Java VM。它必须是相应 Java 可执行文件的完整文件系统路径。如果未指定,Eclipse 可执行文件将使用搜索算法来定位合适的 VM。无论如何,可执行文件然后使用 -vm 参数将路径传递给用于 Java Main 的实际 VM。Java Main 然后将此值存储在 eclipse.vm 中。

4

4 回答 4

74

实际上,Windows->Preferences->Java->installed 并没有显示运行 Eclipse 的那个,而只显示它运行的默认 JRE。

要查看正在运行的 Eclipse,请转到 Help->About Eclipse Platform->Configuration Details,然后查找属性 eclipse.vm。

例如:

eclipse.vm=C:\Program Files\Java\jre6\bin\client\jvm.dll
于 2009-02-17T15:08:42.750 回答
11

根据这个线程这个

eclipse 将尝试通过检查您的路径来定位您用于启动自身的 JVM。

这样你就可以:

  • 创建一个 JAVA_HOME 环境变量,它指向您实际首选的 JDK。
    这样,您可以轻松地在安装的 JDK 之间进行选择。

  • 将 %JAVA_HOME%\bin 放在路径中,前面的任何位置<windowsroot>\system32,其中还包含 java、javaw 和 co 二进制文件。
    这样,每当从路径中调用 JDK bin 目录中的 java* 时,它就会被调用。

我相信其他帖子会告诉您如何找到 JVM eclipse 正在使用的内容。

但是,我将您的问题解释为:“eclipse在启动时将使用什么 JVM ?” 当没有-vm使用 args时。


经过进一步研究,eclipse似乎会寻找一个JRE:

  • 直接在其安装目录下 ( <eclipse>\jre):如果您将任何已安装 JRE 的内容复制到该子目录中,它将被选中
  • C:\Program Files\Java\JRE....
  • %PATH%(见上文)

另请阅读此SO 答案以了解为什么 eclipse 默认选择 jvm.dll 而不是 javaw.exe

于 2009-02-17T15:10:03.420 回答
7

如果您转到“帮助”->“关于 Eclipse 平台”并单击“配置详细信息”按钮,它将需要一点时间才能显示出来,但是您会得到 Eclipse 配置的所有内容的转储...

我发现这 2 行是您正在寻找的内容:

-vm

C:\Program Files\Java\jdk1.6.0_10\bin..\jre\bin\client\jvm.dll

于 2009-02-17T15:08:08.603 回答
-2

我想如果你这样做:
Window->Preferences->Java->Installed JREs
你会在你的机器上看到一个 JREs 列表。选中的那个是 eclipse 正在使用的那个。

或者,如果您进入“运行配置”对话框,并查看 JRE 选项卡,您可以选择一个 JRE 在那里运行。

于 2009-02-17T15:05:25.800 回答