首页 文章

Eclipse错误:'Failed to create the Java Virtual Machine'

提问于
浏览
201

我在Windows 7上启动Eclipse Helios时收到此错误消息:

无法创建Java虚拟机

Enter image description here

我的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的完整路径 -vm P:\Programs\jdk1.6\bin\\bin\javaw.exe

  • 完全删除 -vm 选项

  • 正在删除 --launcher.XXMaxPermSize 修复了该问题,但它会导致permgen错误

  • 删除 --launcher.XXMaxPermSize512 修复了该问题,但它会导致permgen错误

  • 减少 -Xmx512m 也解决了这个问题 .

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

30 回答

  • 1

    解决问题的步骤: -

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

    • 它有一些添加配置 . 找到行-launcher.XXMaxPermSize.It将是此文件中的最后一行 . 现在删除/删除默认值256m并保存 .

  • 1

    这可能有效:

    打开 eclipse.ini 文件并粘贴到行尾的行下方 .

    -vmargs
    -Xms40m
    -Xmx512m
    -XX:MaxPermSize=256m
    
  • 11

    将参数大小减少到-256

    查看我的eclipse.ini文件

    -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
    
  • 0

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


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

  • 1

    快速解决:

    在eclipse.ini中将 -Xmx1024m 更改为 -Xmx512m (位于 eclipse.exe 所在的同一级别的文件) . 它会像魅力一样起作用 .

  • 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
    
  • 282

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

  • 73

    解决此问题的简单方法是删除或重命名您的eclipse.ini文件 . 先试试吧 . 如果此方法无法解决您的问题,请尝试下面介绍的解决方案 .

    其他解决方法:

    Solution 1

    在eclipse.ini文件中添加一个字符串,用于更改 javaw.exe 文件的目标 . 主要的是这个字符串必须放在字符串"-vmargs"上面!

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

    Solution 2

    删除 –launcher.XXMaxPermSize 的值,如256m .

    Solution 3

    删除或减少Xms和Xmx的值:

    -Xms384m 
    -Xmx384m
    
  • 0

    确保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
    
  • 18

    @Maro对我来说它非常简单!

    收到错误消息警报后,我执行'eclipse c .exe ' from a command prompt. This opened Eclipse. Then again I tried with ' eclipse.exe ' and now it' s工作得很好 .

    不幸的是,它没有给出任何技术原因 .

  • 6

    这对我有用:

    我在Windows 7机器上关闭了所有其他内存密集型应用程序 . 我试图打开Eclipse,瞧,它有效 .

  • 5

    所有这些解决方案让我失望使用Eclipse六个月之后,这件事发生在我身上 . 似乎某种程度上我的JDK被破坏了 .

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

  • 3

    添加这个解决了我的问题:

    -vm
    
    D:\Java\jdk1.6.0_29\bin\javaw.exe
    
  • 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
    
  • 1

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

  • 1

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

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

  • 0

    当我的Eclipse质子无法启动时面临问题 . 收到错误“无法创建Java虚拟机”

    下面添加到eclipse.ini文件中

    -vm
    C:\Program Files\Java\jdk-10.0.1\bin\javaw.exe
    
  • 2

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

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

  • 104
    • 打开位于eclipse安装文件夹中的ecplise.ini文件 .

    • 使用-vm D:\ jdk1.6.0_23 \ bin \ javaw.exe查找并替换-vmargs行,或者只删除行-vmargs并保存 . 现在问题正在解决

  • 16

    在eclipse.ini中添加-vm之后如下所示为我工作 . 在 -vmargs 之前添加它,不要删除它

    -vm
    C:\apps\Java\jdk1.8.0_92\bin\javaw.exe
    -vmargs
    

    有一个jdk更新导致了这个问题 .

  • 8

    我遇到了同样的问题,我找到了解决方案 . MaxPermSize的分配存在问题 . 如果您尝试分配的数量超过计算机的可用空间,则会在我的问题中出现此错误 . 所以尽量减少MaxPermSize .

    我认为它可以帮助您解决问题 .

  • 3
    • 使用Eclipse.exe打开文件夹并找到eclipse.ini文件

    • 用您当前的javaw.exe实际路径替换-vmargs:* -vm“c:\ Program Files \ Java \ jdk1.7.0_07 \ bin \ javaw.exe”*

    -启动
    插件/ org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar
    --launcher.library
    插件/ org.eclipse.equinox.launcher.win32.win32.x86_1.1.200.v20120522-1813
    -产品
    com.android.ide.eclipse.adt.package.product
    --launcher.XXMaxPermSize
    256M
    -showsplash
    com.android.ide.eclipse.adt.package.product
    --launcher.XXMaxPermSize
    256米
    --launcher.defaultAction
    打开文件
    ** - vm“c:\ Program Files \ Java \ jdk1.7.0_07 \ bin \ javaw.exe”**
    -Dosgi.requiredJavaVersion = 1.6
    -Xms40m
    -Xmx768m
    -Declipse.buildId = v21.1.0-569685

  • 3

    尝试添加

    -vm
    D:\Java\jdk1.6.0_29\bin\javaw.exe
    

    仅供参考:请参阅sunblog

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

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

    例如

    -vm
    C:\Program Files\Java\jre7\bin\client\jvm.dll
    

    另请注意

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

  • 2

    对我来说,它通过更改Path环境变量中的JDK bin路径来解决 . 将JDK bin路径放在JDK home下有jre / bin / client / jvm.dll .

  • 0

    有一段时间,这不是你的eclipse.ini;这是你的JDK崩溃了 . 您可以通过在命令提示符中编写以下命令来检查它:

    c:\> java -version
    

    如果此命令显示以下错误:

    Error occurred during initialization of VM
    
    java/lang/NoClassDefFoundError: java/lang/Object
    

    然后首先卸载JDK并重新安装 .

    Eclipse将再次出现;)因为今天我遇到了同样的问题,上面的建议是Itachi Uchiha .

  • 0

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

  • 0

    1. 从您的eclipse文件夹中打开 eclipse.ini 文件,请参见下图 .

    eclipse.ini

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

    max size

    像这样:

    -Xmx512m
    -Dosgi.requiredJavaVersion=1.6
    

    OR

    -Xmx512m
    -Dosgi.requiredJavaVersion=1.7
    

    OR

    -Xmx512m
    -Dosgi.requiredJavaVersion=1.8
    

    那对我来说效果很好 .

  • 0
    • 从eclipse文件夹中打开 eclipse.ini 文件 .

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

  • 4
    -vm D:\Java\jdk1.6.0_29\bin\javaw.exe
    
  • 26

    在我的情况下,将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 to ' 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
    

相关问题