我只是追加 虚拟机 C:\Program Files\Java\jre6\bin\javaw.exe

在eclipse.ini中,然后我尝试再次启动eclipse,并得到这个错误。告诉我怎么解或者链接能解出来。

这是eclipse。ini

-startup 
plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar
 --launcher.library
 plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.1.R36x_v20100810 
-showsplash
 org.eclipse.platform
--launcher.XXMaxPermSize 256m 
--launcher.defaultAction 
openFile 
-vm 
C:\Program Files\Java\jre6\bin\javaw.exe
-vmargs 
-Xms40m 
-Xmx384m

谢谢你!


当前回答

你需要检查你的电脑是64位还是32位的操作系统,然后你的JDK(64位/32位)和Eclipse(64位/32位)也一样。

确保它们都是一样的;如果不是,你需要下载一个匹配你的比特。

其他回答

你需要检查你的电脑是64位还是32位的操作系统,然后你的JDK(64位/32位)和Eclipse(64位/32位)也一样。

确保它们都是一样的;如果不是,你需要下载一个匹配你的比特。

请看消息框的第二行。在这里,您可以看到实际上启动了哪个java运行时。我的突然变成了C:\ProgramData\Oracle\Java\javapath\javaw.exe。这发生在我安装了“chrome java更新器”之后(chrome浏览器抱怨说:“你的java已经过时了,你必须更新……”)。

Before this "chrome java update" my eclipse (luna jee x64) started without error. Looking closer to the background I detected following: the chrome java updater (notabene started from an Oracle site) added C:\ProgramData\Oracle\Java\javapath in front of the env var PATH. It contains three symbolic links to the newest java 8 JRE installation in (x86) program folder -> hence to a 32 bit java JRE. Oracle replaces with Java8 the old technique having the symlinks in system32 (64bit) resp. SysWOW64 (32bit).

Meanwhile I learned. Whatever java installer you have executed last (the *.exe) leads windows to remember that java flavour (32b or 64b), with the result that after an update the links in C:\ProgramData\Oracle\Java\javapath point to a java installation of the remembered flavour. If you have a 64b eclipse installation and encounter the described error: just re-install the newest 64b JDK. After that the java updates do no more link to a 32b version. And eclipse 64b will start correctly without the entry in eclipse.ini .

我使用的是Eclipse Juno,我不记得它是32位还是64位。我安装了32位的Java,这就是它失败的原因。然后我安装了Java 64位,Eclipse Juno又开始工作了。

我还删除了环境变量(PATH)中的任何java或jre引用。

使用下面的配置;

    -startup
    plugins/org.eclipse.equinox.launcher_1.3.0.v20130327-1440.jar
    --launcher.library
    plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.200.v20130807-1835
    -product
    org.springsource.ggts.ide
    --launcher.defaultAction
    openFile
    --launcher.XXMaxPermSize
    256M
    -vm
    C:\Program Files\Java\jdk1.7.0_51\jre\bin\javaw.exe
    -vmargs
    -Dorg.eclipse.swt.browser.IEVersion=10001
    -Dgrails.console.enable.interactive=false
    -Dgrails.console.enable.terminal=false
    -Djline.terminal=jline.UnsupportedTerminal
    -Dgrails.console.class=grails.build.logging.GrailsEclipseConsole
    -Dosgi.requiredJavaVersion=1.6
    -Xms40m
    -Xmx768m
    -XX:MaxPermSize=256m
    -Dorg.eclipse.swt.browser.IEVersion=10001

无论何时看到此错误,请转到Configuration目录并检查刚才生成的日志文件。它应该有适当的异常堆栈跟踪。我的情况是,我安装了一个更新的32位JRE(或JVM),这是添加到路径的默认Java。我的Eclipse安装是64位的,这意味着它需要一个64位VM来运行它的本机SWT库。因此,我只是卸载了32位JVM,并将其替换为64位JVM。

我想知道他们是否会改进这种报告机制,而不是在某个目录中默默地生成日志文件。