如何设置 eclipse.ini -vm 选项?

Posted

技术标签:

【中文标题】如何设置 eclipse.ini -vm 选项?【英文标题】:How do I set the eclipse.ini -vm option? 【发布时间】:2010-10-28 16:23:44 【问题描述】:

我为Eclipse 安装了Maven 插件,然后出现如下错误:

请确保 eclipse.ini 中的 -vm 选项指向 JDK

如何使用-vm 选项在eclipse.ini 中指向我的JDK?

【问题讨论】:

wiki.eclipse.org/Eclipse.ini 确保-vm 出现在eclipse.ini 文件中之前 -vmargs 【参考方案1】:

我的解决办法是:

-vm
D:/work/Java/jdk1.6.0_13/bin/javaw.exe
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256M
-framework
plugins\org.eclipse.osgi_3.4.3.R34x_v20081215-1030.jar
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx512m

【讨论】:

另见***.com/questions/142357/… 在 Unix 系统上使用 java 代替 javaw.exe【参考方案2】:

eclipse.ini 文件的第一行必须有-vm,第二行必须有路径。不要试图把所有东西都放在一条线上!

-vm
C:\Program Files\Java\jdk1.6.0_07\bin\javaw.exe

【讨论】:

这个答案至少保存了一个小时 感谢“单线”技巧。 -vm "C:\Program Files\Java\jdk1.6.0_07\bin\javaw.exe" 单行不行。【参考方案3】:

“vmargs”之后的任何内容都被视为 vm 参数。只需确保它在此之前,即 eclipse.ini 中的最后一部分。

【讨论】:

这是缺少的信息以及没有将 -vm 和路径放在同一行 还有一件事要注意,不要在记事本中打开ini文件,因为它会显示不正确。在另一个编辑器中打开它,例如记事本++【参考方案4】:

有一个维基页面here。

JVM 可以通过两种方式启动:通过在与 Eclipse 启动器不同的进程中分叉它,或者通过使用 JNI 调用 API 在进程内加载它。

如果您指定-vm 和实际java(w).exe 的路径,那么JVM 将在一个单独的进程中分叉。您还可以指定-vm 与 jvm.dll 的路径,以便在同一进程中加载​​ JVM:

-vm
D:/work/Java/jdk1.6.0_13/jre/bin/client/jvm.dll

您还可以指定 jre/bin 文件夹本身的路径。

还要注意,eclipse.ini 的一般格式是每个参数在单独的行上。如果将“-vm”和路径放在同一行,它将不起作用。

【讨论】:

【参考方案5】:

-vm

C:\Program Files\Java\jdk1.5.0_06\bin\javaw.exe

请记住,没有引号,无论您的路径是否有空格(与命令行执行相反)。

请看这里:Find the JRE for Eclipse

【讨论】:

【参考方案6】:

我对@9​​87654321@ Linux 的解决方案:

-vm
/home/daniel/Downloads/jdk1.6.0_17/bin
-startup
plugins/org.eclipse.equinox.launcher_1.1.1.R36x_v20101122_1400.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.gtk.linux.x86_64_1.1.2.R36x_v20101019_1345
-product
org.eclipse.epp.package.jee.product
--launcher.defaultAction
openFile
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
-vmargs
-Dosgi.requiredJavaVersion=1.5
-XX:MaxPermSize=256m
-Xms40m
-Xmx512m

【讨论】:

在 -vmargs 声明之前添加这些新行很重要。喜欢一个文件的顶部。【参考方案7】:

我不确定是否发生了变化,但我只是尝试了有关 Eclipse Galileo SR2 (Windows XP SR3) 的“eclipse.ini”中条目的其他答案,但没有一个有效。 Java 是 jdk1.6.0_18,是默认的 Windows 安装。当我从路径中删除“\javaw.exe”时,情况有所改善。

另外,我非常感谢提到 -vm 需要在 ini 文件的第一行。我相信这真的帮助了我。

因此我的 eclipse.ini 文件开始于:

-vm
C:\Program Files\Java\jdk1.6.0_18\bin

仅供参考,我特别需要指定使用 JDK 启动 Eclipse,因为我想使用 m2eclipse 插件。

【讨论】:

【参考方案8】:

您必须编辑 eclipse.ini 文件以获得类似以下的条目:

C:\Java\JDK\1.5\bin\javaw.exe (your location of java executable)
-vmargs
-Xms64m   (based on you memory requirements)
-Xmx1028m

还请记住,在 eclipse.ini 中,任何用于 Eclipse 的内容都应位于 -vmargs 行之前,而用于 JVM 的任何内容都应位于 -vmargs 行之后。

【讨论】:

【参考方案9】:

您在 eclipse.ini 中指向的 JDK 必须与 Eclipse 安装相匹配。

如果您运行的是 32 位或 64 位 Eclipse,请分别使用 32 位或 64 位 Java JDK。

【讨论】:

【参考方案10】:

我想分享这个小技巧:

单击 Eclipse 的图标表明 JRE 存在问题。 所以,我把这个命令放在图标属性的目标字段中:

C:\...\eclipse.exe -vm c:\'Program Files'\Java\jdk1.7.0_51\jre\bin\javaw

认为“'”会解决路径中的空格问题。 那没有用。然后,我尝试了这个命令:

C:\...\eclipse.exe -vm c:\Progra~1\Java\jdk1.7.0_51\jre\bin\javaw

成功

【讨论】:

【参考方案11】:

假设您有一个 jre 文件夹,其中包含从 Java 运行时发行版复制的 bin、lib 等文件,与 eclipse.ini 位于同一文件夹中,您可以在 ecrilpse.ini 中进行设置

-vm
jre\bin\javaw.exe

【讨论】:

【参考方案12】:

我知道存在一个命令行选项-vm,用于指定Java 运行时可执行文件的路径。这可能与 eclipse.ini 中的相同。

【讨论】:

【参考方案13】:
-startup
plugins/org.eclipse.equinox.launcher_1.3.0.v20140415-2008.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.200.v20140603-1326
-product
org.eclipse.epp.package.jee.product
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
512M
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
512m
--launcher.defaultAction
openFile
--launcher.appendVmargs
-vmargs
-Dosgi.requiredJavaVersion=1.6
-Xms2000m
-Xmx3512m

【讨论】:

这不会设置 JVM 并且会不必要地请求大量内存。

以上是关于如何设置 eclipse.ini -vm 选项?的主要内容,如果未能解决你的问题,请参考以下文章

eclipse中怎么设定预设注释作者

eclipse.ini 非标准选项

eclipse中,哪儿能设置jvm的启动参数

Eclipse内存讲解,eclipse.ini设置

如何设置java内存限制

是否可以在 eclipse.ini 文件中添加注释