找出JVM Eclipse正在运行什么

2022-09-01 01:24:46

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

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

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


答案 1

实际上,Windows->Preferences->Java->installed不会显示Eclipse运行的那个,而只会显示它运行事物的默认JRE。

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

例如:

eclipse.vm=C:\Program Files\Java\jre6\bin\client\jvm.dll

答案 2

根据这个线程这个线程:

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

因此,您可以:

  • 创建一个JAVA_HOME环境变量,该变量指向您实际首选的 JDK。
    通过这种方式,您可以轻松地在已安装的JDK之间进行选择。

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

我相信其他帖子会告诉你如何找到JVM eclipse正在使用什么。

但是,我将你的问题解释为:“在启动自身时,eclipse将使用什么JVM?当不使用 -vm 参数时


经过进一步的研究,似乎eclipse将寻找JRE:

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

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


推荐