我在Windows 7上启动Eclipse Helios时收到此错误消息:
无法创建Java虚拟机
我的eclipse.ini看起来如下:
-startup
plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar
-vm
P:\Programs\jdk1.6\bin
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.0.v20100503
-product
org.eclipse.epp.package.jee.product
--launcher.defaultAction
openFile
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
512m
--launcher.defaultAction
openFile
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms120m
-Xmn100m
-Xmx1024m
据我所知,我的JAVA_HOME设置正确。我该如何解决这个问题?
-vm
P:\Programs\jdk1.6\bin\\bin\javaw.exe
-vm
选项--launcher.XXMaxPermSize
可解决此问题,但会导致permgen错误512
的值--launcher.XXMaxPermSize
可修复此问题,但会导致permgen错误-Xmx
缩减为512m
也可以解决问题。为什么我不能将'1024m'用于'-Xmx'和'--launcher.XXMaxPermSize'?
答案 0 :(得分:282)
1。打开eclipse文件夹中的eclipse.ini
文件,如下图所示。
2。在eclipse.ini
或任何其他Notepad
应用中打开text-editor
,找到行-Xmx256m
(或-Xmx1024m
) 。现在将默认值256m
(或1024m
)更改为512m
。您还需要提供确切的Java安装版本(1.6或1.7或其他)。
喜欢这个:
-Xmx512m
-Dosgi.requiredJavaVersion=1.6
或强>
-Xmx512m
-Dosgi.requiredJavaVersion=1.7
或强>
-Xmx512m
-Dosgi.requiredJavaVersion=1.8
然后它适合我。
答案 1 :(得分:105)
尝试添加
-vm
D:\Java\jdk1.6.0_29\bin\javaw.exe
仅供参考:请参阅sunblog
对于可能遇到Java 7问题的其他人,根据Eclipse Wiki - eclipse.ini vm_value (windows example)
这可能不适用于所有系统。如果遇到" Java已启动但返回退出代码= 1"启动eclipse时出错,修改-vm参数指向jvm.dll
e.g。
-vm
C:\Program Files\Java\jre7\bin\client\jvm.dll
另请注意
-vm选项必须在-vmargs选项之前发生,因为-vmargs之后的所有内容都直接传递给JVM
答案 2 :(得分:75)
尝试删除-vm P:\Programs\jdk1.6\bin
行。
此外,一般建议:设置-Dosgi.requiredJavaVersion=1.6
,而不是1.5
。
答案 3 :(得分:26)
我知道现在已经很老了,但我刚刚遇到了同样的问题,问题是我分配给了很多内存,以至于它无法掌握。所以打开eclipse.ini并降低分配给-Xmx
XXMaxPermSize
的内存量我改为-Xmx512m
和XXMaxPermSize256m
答案 4 :(得分:18)
从eclipse文件夹中打开eclipse.ini
文件。
它有一些添加配置。找到第–launcher.XXMaxPermSize
行。现在删除默认值256m并保存。
答案 5 :(得分:18)
我删除了 eclipse.ini 。我遇到了这个问题并删除 ini 文件解决了它。
答案 6 :(得分:11)
用您当前的javaw.exe实际路径替换 -vmargs :* -vm “c:\ Program Files \ Java \ jdk1.7.0_07 \ bin \ javaw.exe”*
-startup plugins/org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar --launcher.library plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.200.v20120522-1813 -product com.android.ide.eclipse.adt.package.product --launcher.XXMaxPermSize 256M -showsplash com.android.ide.eclipse.adt.package.product --launcher.XXMaxPermSize 256m --launcher.defaultAction openFile **-vm “c:\Program Files\Java\jdk1.7.0_07\bin\javaw.exe”** -Dosgi.requiredJavaVersion=1.6 -Xms40m -Xmx768m -Declipse.buildId=v21.1.0-569685
答案 7 :(得分:8)
您还可以通过删除值" 256m"来解决此问题。在" -launcher.XXMaxPermSize“。
行下答案 8 :(得分:8)
我找到了一个非常简单的解决方案。只需删除eclipse.ini
文件,但先备份。我多次遇到同样的问题,最后我删除了这个,我不再有问题了。
它也增加了装载时间。现在我的Eclipse开始比以前更快。
答案 9 :(得分:6)
在STS.conf
文件中,您需要检查两件重要的事情,以避免创建/分配jvm问题
1。提供确切的jdk安装位置:
--vm C:\Program Files\Java\jdk1.7.0_01\jre\bin\javaw.exe
2. 您需要提供确切的java安装版本:
--Dosgi.requiredJavaVersion=1.7
3. 尝试减少内存大小:
--XX:MaxPermSize=256m
答案 10 :(得分:6)
打开位于eclipse安装文件夹中的ecplise.ini文件。
查找&用-vm D:\ jdk1.6.0_23 \ bin \ javaw.exe替换-vmargs行或者只删除-vmargs行并保存。现在问题已经解决了
答案 11 :(得分:5)
在尝试上述减少内存的解决方案之后,Eclipse开始工作,但每次在org.eclipse.debug.core
专门从工作区加载插件时都会挂起。
我在这里找到了解决方案,Eclipse hangs at Splash Screen,并希望分享它。希望它也可以帮助其他人。
答案 12 :(得分:3)
快速修复:
将 eclipse.ini 中的-Xmx1024m
更改为-Xmx512m
(位于eclipse.exe
所在的同一级别的文件)。它会像魅力一样发挥作用。
答案 13 :(得分:3)
确保eclipse.ini在vmargs之前没有多个条目并使用vm条目:
-vm
D:/java/jdk1.8.0_65/bin/javaw.exe
-vmargs
-Dosgi.requiredJavaVersion=1.8
-Dosgi.instance.area.default=@user.home/eclipse-workspace
-XX:+UseG1GC
-XX:+UseStringDeduplication
-Dosgi.requiredJavaVersion=1.8
-Xms256m
-Xmx1024m
答案 14 :(得分:3)
解决此问题的简单方法是删除或重命名 eclipse.ini 文件。先试试吧。如果此方法无法解决您的问题,请尝试下面介绍的解决方案。
其他解决方法:
解决方案1
在 eclipse.ini 文件中添加一个字符串,用于更改javaw.exe
文件的目的地。主要的是这个字符串必须放在字符串" -vmargs"!
-vm
C:\Program Files\Java\jdk1.6.0_22\bin\javaw.exe
解决方案2
删除–launcher.XXMaxPermSize
的值,例如 256m 。
解决方案3
删除或减少Xms和Xmx的值:
-Xms384m
-Xmx384m
答案 15 :(得分:3)
这可能有效:
打开eclipse.ini
文件并在行尾粘贴下面的行。
-vmargs
-Xms40m
-Xmx512m
-XX:MaxPermSize=256m
答案 16 :(得分:3)
试试这个:
-startup plugins/org.eclipse.equinox.launcher_1.1.1.R36x_v20101122_1400.jar
--launcher.library plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.2.R36x_v20101222
-showsplash org.eclipse.platform
--launcher.XXMaxPermSize 256m
--launcher.defaultAction openFile
-vm F:\Program Files\jdk1.6\bin\javaw.exe
-vmargs
-Xms512m
-Xmx512m
-XX:+UseParallelGC
-XX:PermSize=256M
-XX:MaxPermSize=512M
答案 17 :(得分:2)
这对我有用:
我关闭了Windows 7计算机上的所有其他内存密集型应用程序。我试图打开Eclipse,瞧,它有效。
答案 18 :(得分:2)
解决了我的Eclipse质子无法启动时的问题。 得到错误“无法创建Java虚拟机”
在eclipse.ini文件中添加了以下内容
Storyboard
答案 19 :(得分:2)
在eclipse.ini中添加-vm之后如下所示为我工作。在-vmargs
之前添加它,不要删除它
-vm
C:\apps\Java\jdk1.8.0_92\bin\javaw.exe
-vmargs
有一个jdk更新导致了这个问题。
答案 20 :(得分:1)
我遇到了以下问题。所以我确实是在eclipse安装文件夹中找到了eclipse.ini文件。
然后我进行了如下编辑 为-vm删除java jdk文件,删除XX并添加XX:MaxPermSeze = 256
答案 21 :(得分:1)
有一段时间,这不是你的 eclipse.ini ;这是你的JDK崩溃了。您可以通过在命令提示符中编写以下命令来检查它:
c:\> java -version
如果此命令显示以下错误:
Error occurred during initialization of VM
java/lang/NoClassDefFoundError: java/lang/Object
然后首先卸载JDK并重新安装。
Eclipse将再次出现;)今天我遇到了同样的问题,并且 上述内容由Itachi Uchiha建议。
答案 22 :(得分:1)
添加此项修复了我的问题:
-vm
D:\Java\jdk1.6.0_29\bin\javaw.exe
答案 23 :(得分:1)
解决此问题的正确方法是在ini fie中添加指向您Java文件夹的jvm.dll文件的-vm行。
-vm
C:\Program Files\Java\jre1.8.0_202\bin\server\jvm.dll
/*there is no dquote for path, and path points to right java version folder mentioned in ini file*/
如果上述解决方法无效,请不要尝试其他任何方法。该线程中的大多数建议都是错误的。这些黑客中的一些可能暂时起作用或在某些机器配置上起作用,但是eclipse.ini的内容并非无关紧要。 有关权威参考,请参见此[wiki页面]:https://wiki.eclipse.org/Eclipse.ini#Specifying_the_JVM,其中解释了文件的内容。另请注意,该页面底部的另请参阅链接,以获取有关堆大小等内容的更多详细信息。 永远不要删除eclipse.ini。也不建议删除-vm或Xmx选项。如果这样做,就是在自找麻烦。
以下是与您的问题有关的Wiki页面参考:
答案 24 :(得分:1)
将参数大小减少到-256
-startup
plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.100.v20110502
-product
org.eclipse.epp.package.jee.product
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
256M
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256M
--launcher.defaultAction
openFile
-vmargs
-Dosgi.requiredJavaVersion=1.6
-Xms40m
-Xmx512m
答案 25 :(得分:0)
即使您在Windows上,也需要向javaw.exe
添加/
带有正斜杠的完整路径,即\
代替eclipse.ini
到-vm
C:/Program Files/Java/jdk-14/bin/javaw.exe
。如下所示:
-vmargs
上述行也必须放在之前 fun(int n) {
if (n < 2)
return 1;
int counter = 0;
for (int i = 1; i <= 8; i++)
fun(n / 2);
for (int i = 1; i <= Math.pow(n, 3); i++)
counter++;
}
之前。
答案 26 :(得分:0)
在我的情况下,将Java从1.6升级到1.7后出现了这个问题。
要了解错误,请在eclipse.exe
文件夹中运行java.exe。使用eclipse.ini中的参数,因为它将显示哪个参数导致失败。
例如:
F:\Mobile Class\adt-bundle-windows-x86\adt-bundle-windows-x86\eclipse>java -star
tup plugins/org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar --launcher.lib
rary plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.200.v20120522-1813
-product com.android.ide.eclipse.adt.package.product --launcher.XXMaxPermSize 7
68m -showsplash org.eclipse.platform --launcher.XXMaxPermSize 768m --launcher.d
efaultAction openFile -vm C:\Program Files\Java\jre7\bin\client\jvm.dll -vmargs
-Dosgi.requiredJavaVersion=1.6 -Declipse.buildId=v21.1.0-569685 -Xms40m -Xmx768m
Unrecognized option: -startup
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
所以我将'启动'swith更改为' jar ',如下所示,并修复了问题:
F:\Mobile Class\adt-bundle-windows-x86\adt-bundle-windows-x86\eclipse>java -jar
plugins/org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar --launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.200.v20120522-1813 -pr
oduct com.android.ide.eclipse.adt.package.product --launcher.XXMaxPermSize 768m
-showsplash org.eclipse.platform --launcher.XXMaxPermSize 768m --launcher.defaul
tAction openFile -vm C:\Program Files\Java\jre7\bin\client\jvm.dll -vmargs -Dosg
i.requiredJavaVersion=1.6 -Declipse.buildId=v21.1.0-569685 -Xms40m -Xmx768m
答案 27 :(得分:0)
我也面临这个问题。您可能安装了多个JAVA版本。确保将 JAVA_HOME 变量设置为正确的版本。
答案 28 :(得分:0)
该问题首先出现在以下版本的补丁 DCEVM : DCEVM-8u181-installer.jar 上。
然后移除标志< eclipse.ini 中的strong> -XX:+ UseG1GC 可以解决此问题。
答案 29 :(得分:0)
我尝试了以上所有操作,但对我没有任何帮助。 请按照以下步骤进行进一步检查:
答案 30 :(得分:0)
我从eclipse.ini中删除了-XX:+ UseStringDeduplication。如果运行eclipsec.exe,则会获得更好的解密效果。
答案 31 :(得分:0)
我遇到了同样的问题,我找到了解决方案。 MaxPermSize的分配存在问题。如果您尝试分配超过机器的可用空间,那么它会在我的问题中出现此错误。所以尽量减少MaxPermSize。
我认为它可以帮助您解决问题。
答案 32 :(得分:0)
我所要做的就是从-vm
文件和eclipse.ini
中删除return
。这次它会告诉你它在哪里寻找javaw.exe
所以你可以去那里删除符号链接。确保您的JAVA_HOME
路径已定义jdk
。
答案 33 :(得分:0)
在完成上述经过验证的步骤失败后,我在决定重新安装后尝试了一些事情。
添加:%\ USER PATH \ Java \ jdk1.6.0_39 \ bin到环境变量
已删除:eclipse配置文件
重新运行:eclipsec.exe
现在项目的所有内容都恢复了工作。
答案 34 :(得分:0)
我的机器上已经打开了一个Eclipse窗口,当我尝试打开另一个Eclipse实例时,我收到了这个错误。我刚关闭了我打开的Eclipse窗口,然后启动了另一个窗口。并且不再有这样的错误:)
答案 35 :(得分:0)
所有这些解决方案都让我失望。在使用Eclipse六个月之后,这发生在我身上。似乎某种程度上我的JDK被破坏了。
我最终的解决方案是下载更新的JDK并相应地更新我的JAVA_HOME, 从我的案例中的jdk1.6.0_37到jdk1.6.0_43。
答案 36 :(得分:0)
转到Task Manager,结束所有不必要的任务,然后启动Eclipse。你不会得到这个错误。试试吧;它对我有用:)
答案 37 :(得分:0)
-vm D:\Java\jdk1.6.0_29\bin\javaw.exe
答案 38 :(得分:0)
@Maro对我而言,它非常简单!
收到错误消息提醒后,我从命令提示符处执行了'eclipse c .exe'。这打开了Eclipse。然后我再次尝试使用'eclipse.exe',现在它工作得很好。
不幸的是,它没有给出任何技术原因。
答案 39 :(得分:0)
解决问题的步骤: -
从eclipse文件夹中打开eclipse.ini文件。
它有一些添加配置。找到行-launcher.XXMaxPermSize.It将是此文件中的最后一行。现在删除/删除默认值256m并保存。
答案 40 :(得分:0)
对我而言,它通过更改Path环境变量中的JDK bin路径来解决。将JDK bin路径放在JDK home下有jre / bin / client / jvm.dll。