当我在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设置正确。我该如何解决这个问题?

到目前为止我尝试过的事情:

将完整路径添加到javaw.exe 虚拟机 P: \程序\ jdk1.6 \ bin \ \ bin \ javaw.exe 完全删除-vm选项 删除——发射器。XXMaxPermSize修复了这个问题,但是它会导致permgen错误 删除——launcher的512值。XXMaxPermSize修复了这个问题,但是它会导致permgen错误 减少-Xmx到512m也解决了这个问题。

为什么我不能使用'1024m'为'-Xmx'和'——launcher.XXMaxPermSize'?


当前回答

所有这些解决办法我都失败了。在使用Eclipse 6个月后,我突然遇到了这种情况。似乎我的JDK被破坏了。

我最终的解决方案是下载一个更新的JDK并相应地更新我的JAVA_HOME, 在我的例子中,从jdk1.6.0_37到jdk1.6.0_43。

其他回答

有时它不是eclipse.ini;是你的JDK崩溃了。您可以在命令提示符中输入以下命令进行检查:

c:\> java -version

如果该命令显示如下错误:

Error occurred during initialization of VM

java/lang/NoClassDefFoundError: java/lang/Object

请先卸载JDK,然后重新安装。

Eclipse将会再次出现;)今天我也遇到了同样的问题 以上是Itachi Uchiha的建议。

在上述经过验证的步骤失败后,我决定重新安装后尝试了一些东西。

添加:%\USER PATH\Java\jdk1.6.0_39\bin到环境变量

删除:eclipse配置文件

重新运行:eclipse .exe

现在项目的一切都恢复正常了。

我知道这是很旧的现在,但我刚刚有同样的问题,问题是我分配到太多的内存eclipse,它无法获得。因此,打开eclipse.ini并降低分配给-Xmx的内存数量。我将我的内存更改为-Xmx512m和XXMaxPermSize256m

1. 从eclipse文件夹中打开eclipse.ini文件,见下图。

2. 在记事本或任何其他文本编辑器应用程序中打开eclipse.ini,找到行-Xmx256m(或-Xmx1024m)。现在将默认值256m(或1024m)更改为512m。您还需要给出确切的java安装版本(1.6或1.7或其他)。

是这样的:

-Xmx512m
-Dosgi.requiredJavaVersion=1.6

OR

-Xmx512m
-Dosgi.requiredJavaVersion=1.7

OR

-Xmx512m
-Dosgi.requiredJavaVersion=1.8

那它对我很有效。

在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