Eclipse错误:'无法创建Java虚拟机'

Mar*_*aro 204 eclipse jvm

我在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
Run Code Online (Sandbox Code Playgroud)

据我所知,我的JAVA_HOME设置正确.我怎样才能解决这个问题?

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

  1. 添加javaw.exe的完整路径 -vm P:\Programs\jdk1.6\bin\\bin\javaw.exe
  2. -vm完全删除选项
  3. 删除--launcher.XXMaxPermSize修复了问题,但它导致permgen错误
  4. 卸下值512--launcher.XXMaxPermSize修复问题,但它会导致PermGen的错误
  5. 减少-Xmx512m还修复该问题.

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

Akh*_*ain 283

1.eclipse.ini从eclipse文件夹中打开文件,如下图所示.

的eclipse.ini

2. 打开eclipse.iniNotepad或任何其他text-editor应用程序,查找行-Xmx256m(或-Xmx1024m).现在将默认值256m(或1024m)更改为512m.您还需要提供确切的Java安装版本(1.6或1.7或其他).

最大尺寸

像这样:

-Xmx512m
-Dosgi.requiredJavaVersion=1.6
Run Code Online (Sandbox Code Playgroud)

要么

-Xmx512m
-Dosgi.requiredJavaVersion=1.7
Run Code Online (Sandbox Code Playgroud)

要么

-Xmx512m
-Dosgi.requiredJavaVersion=1.8
Run Code Online (Sandbox Code Playgroud)

那对我来说效果很好.

  • 哇,我把-Xmx1024m更改为-Xmx512m并且它有效! (62认同)
  • 这只有在问题内存不足并且*降低*eclipse.ini中的值时才有效.提升它们只会使这个问题更有可能发生. (8认同)
  • 谢谢你,我增加了这个值,它运行良好,我认为这是因为我更新了JDK. (2认同)

Ron*_*nQi 110

尝试添加

-vm
D:\Java\jdk1.6.0_29\bin\javaw.exe
Run Code Online (Sandbox Code Playgroud)

仅供参考:推荐sunblog

对于可能遇到Java 7问题的其他人,根据Eclipse Wiki - eclipse.ini vm_value(windows示例)

这可能不适用于所有系统.如果在启动eclipse时遇到"Java已启动但​​返回退出代码= 1"错误,请修改-vm参数以指向jvm.dll

例如

-vm
C:\Program Files\Java\jre7\bin\client\jvm.dll
Run Code Online (Sandbox Code Playgroud)

另请注意

-vm选项必须在-vmargs选项之前发生,因为-vmargs之后的所有内容都直接传递给JVM

  • +1我错过了订购部分.网上所有其他地方他们都谈论-vm参数,但他们忽略了它必须在-vmargs之前发生 (4认同)

Mat*_*all 78

尝试删除-vm P:\Programs\jdk1.6\bin行.


另外,一般建议:设置-Dosgi.requiredJavaVersion=1.6,而不是1.5.

  • 在eclipse.ini中,将1024中的-Xmx减少到512m修复了我的问题.该系统有1GB RAM. (52认同)
  • 我试过了,但问题仍然存在 (7认同)
  • 这对我有用,谢谢.但为什么?! (4认同)
  • @dexter,谢谢你,通过减少Xmx,它对我有用 (3认同)
  • 对于 macos eclipse-2020,在 eclipse.ini 中的“--launcher.appendVmargs”下面添加:“-vm”“/Library/Java/JavaVirtualMachines/jdk1.8.0_172.jdk/Contents/Home/bin/java”。 (2认同)

Pop*_*eye 26

我知道现在已经很老了,但我刚刚遇到了同样的问题,问题是我分配给了很多内存,以至于它无法掌握.所以打开eclipse.ini并降低分配给-Xmx XXMaxPermSize我的内存量,我将其改为-Xmx512mXXMaxPermSize256m


Fur*_*rqi 18

  1. eclipse.ini从eclipse文件夹中打开文件.

  2. 它有一些添加配置.找到这条线–launcher.XXMaxPermSize.现在删除默认值256m并保存.


Mon*_*ter 18

我删除了eclipse.ini.我遇到了这个问题并删除了ini文件解决了它.


小智 12

  1. 使用Eclipse.exe打开文件夹并找到eclipse.ini文件
  2. 用您当前的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
    
    Run Code Online (Sandbox Code Playgroud)


Yas*_*Ali 8

您还可以通过删除"-launcher.XXMaxPermSize"行下的值"256m"来解决此问题.


use*_*970 8

我找到了一个非常简单的解决方案.只需删除eclipse.ini文件,但先备份.我多次遇到同样的问题,最后我删除了这个,我不再有问题了.

它还增加了加载时间.现在我的Eclipse开始比以前更快.


小智 6

STS.conf文件中,您需要检查两个重要的事情,以避免创建/分配jvm问题

1.提供确切的jdk安装位置:

--vm C:\Program Files\Java\jdk1.7.0_01\jre\bin\javaw.exe
Run Code Online (Sandbox Code Playgroud)

2.您需要提供确切的Java安装版本:

--Dosgi.requiredJavaVersion=1.7
Run Code Online (Sandbox Code Playgroud)

3.尝试减小内存大小:

--XX:MaxPermSize=256m
Run Code Online (Sandbox Code Playgroud)


Raj*_*jas 6

  1. 打开eclipse安装文件夹中的ecplise.ini文件。

  2. 查找并用-vm D:\ jdk1.6.0_23 \ bin \ javaw.exe替换-vmargs行,或者只是删除-vmargs行并保存。现在问题已经解决了

  • 谢谢@Rajas,只需删除-vmargs行并保存对我有用 (2认同)

小智 5

在尝试上述减少内存的解决方案之后,Eclipse开始工作,但每次从工作空间加载插件时都会挂起org.eclipse.debug.core.

我在这里找到了解决方案,Eclipse挂起了Splash Screen,想要分享它.希望它也可以帮助其他人.