当我在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'?
试着添加
-vm
D:\Java\jdk1.6.0_29\bin\javaw.exe
供参考:参考太阳博客
对于其他可能对Java 7有问题的人,请参考Eclipse Wiki - Eclipse .ini vm_value (windows示例)
这可能不适用于所有系统。如果在启动eclipse时遇到“Java已启动但返回退出代码=1”错误,请修改-vm参数以指向jvm.dll
e.g.
-vm
C:\Program Files\Java\jre7\bin\client\jvm.dll
还要注意
-vm选项必须出现在-vmargs选项之前,因为-vmargs之后的所有内容都将直接传递给JVM
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
那它对我很有效。
在我的例子中,这个问题发生在将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.
所以我把'startup' 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
正确的解决方法是在文件夹中添加指向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*/
If the above fix is not fruitful, then do not attempt anything else. Most of the advice in this thread is misguided. Some of these hacks might work temporarily or on certain machine configurations, but the contents of eclipse.ini are not trivial nor arbitrary.
For the authoritative reference, see this [wiki page]:https://wiki.eclipse.org/Eclipse.ini#Specifying_the_JVM that explains the contents of the file. Also note the See Also links at the bottom of that page for more details about things like heap size, etc.
DO NOT delete eclipse.ini, EVER. It is also inadvisable to remove the -vm or Xmx options. If you do, you're asking for trouble.
以下是wiki页面上与您的问题相关的参考资料: