协慌网

登录 贡献 社区

无法启动 Eclipse - Java 已启动但返回退出代码 = 13

我正在尝试使用 Eclipse 首次尝试 Android 开发。我在尝试运行 Eclipse 时遇到了这个问题,仅在几分钟前安装了 4.2 版本。

在第一次尝试启动Eclipse而没有任何参数来指定 Java VM 之后,我收到一条错误消息,说它couldn't find a Java VM called javaw.exe inside the Eclipse folder ,因此我找到了安装 Java 的位置并将该位置指定为快捷方式目标中的参数。现在我得到一个不同的错误, Java was started but returned exit code=13

类似的问题似乎表明它是一个 32 位 / 64 位冲突,但我 99%肯定我下载了 Eclipse 和Java (RE 7u5) 64 位版本Java (RE 7u5) ,我选择了因为我有 64 位 Windows 7 的。

  • 如果有人知道如何确认我的 Eclipse 和 Java 是 64 位,那将不胜感激。
  • 如果您认为我的问题不同,请帮忙!
  • 请尽可能明白地说,因为我对 Eclipse 和 Java 完全不熟悉。

快捷方式目标:“C:\ Program Files \ Eclipse-SDK-4.2-win32-x86_64 \ eclipse \ eclipse.exe”-vm“C:\ Program Files(x86)\ Java \ jre7 \ bin \ javaw.exe”

完整的错误代码......:

Java was started but returned exit code=13
C:\Program Files (x86)\Java\jre7\bin\javaw.exe
-Xms40m
-Xmx512m
-XX:MaxPermSize=256m
-jar C:\Program Files\Eclipse-SDK-4.2-win32-x86_64\eclipse\\plugins/org.eclipse.equinox.launcher_1.30v20120522-1813.jar
-os win32
-ws win32
-arch x86_64
-showsplash C:\Program Files\Eclipse-SDK-4.2-win32-x86_64\eclipse\\plugins\org.eclipse.platform_4.2.0.v201206081400\splash.bmp
-launcher C:\Program Files\Eclipse-SDK-4.2-win32-x86_64\eclipse\eclipse.exe
-name Eclipse
--launcher.library C:\Program Files\Eclipse-SDK-4.2-win32-x86_64\eclipse\\plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.200.v201205221813\eclipse_1503.dll
-startup C:\Program Files\Eclipse-SDK-4.2-win32-x86_64\eclipse\\plugins/org.eclipse.equinox.launcher_1.30v20120522-1813.jar
--launcher.overrideVmargs
-exitdata 1e30_5c
-vm C:\Program Files (x86)\Java\jre7\bin\javaw.exe
-vmargs
-Xms40m
-Xmx512m
-XX:MaxPermSize=256m
-jar C:\Program Files\Eclipse-SDK-4.2-win32-x86_64\eclipse\\plugins/org.eclipse.equinox.launcher_1.30v20120522-1813.jar

答案

您的 Eclipse 版本是 64 位,基于路径和文件名。但是,它正在拾取的 Java 版本是 32 位,如它来自何处所示,在这一行:

-vm C:\Program Files (x86)\Java\jre7\bin\javaw.exe

Program Files (x86)是 64 位 Windows 放置32 位程序的文件夹。

Program Files是 64 位 Windows 放置64 位程序的文件夹。

当系统安装了多个 JVM 时就会发生这种情况,就像 Windows 64 位上的情况一样(例如,JRE 下载页面使用浏览器的位数来确定为您提供的 bit-ness 下载,许多人使用(d)32 位浏览器,即使他们运行 64 位 Windows)。

解决此问题的最佳方法是假设您的系统上实际上有 64 位 JRE 或 JDK,那就是在eclipse.ini指定您希望它使用哪个 JVM。这些说明在Eclipse wiki 页面中有详细说明,但基本上你必须在 ini 文件中指定-vm选项 - 请务必仔细阅读 wiki 页面,因为格式非常具体。

强烈建议在eclipse.ini指定 JVM 路径,因为这样做会使 Eclipse 与某些程序安装程序可能对系统PATH任何潜在更改隔离开来(我正在与您联系,Oracle!)。

另一种选择是下载和使用 32 位 Eclipse 而不是 64 位,但仍然强烈建议在eclipse.ini指定 JVM 的路径。


留待历史参考

要检查您的 Java 版本,请运行

java -version

在控制台(命令提示符)。在带有 64 位 Java 6 的 Windows 7 上,我得到:

java version "1.6.0_27"
  Java(TM) SE Runtime Environment (build 1.6.0_27-b07)
  Java HotSpot(TM) 64-Bit Server VM (build 20.2-b06, mixed mode)

请注意第 3 行,它表明这是 64 位版本。

在 32 位版本上你会得到类似的东西:

Java HotSpot(TM) Client VM (build 20.1-b02, mixed mode, sharing)

我收到此错误,发现我的 PATH 变量(在 Windows 上)可能已更改。我的 PATH 首先是这个条目:

C:\ProgramData\Oracle\Java\javapath

... 并且 Eclipse 运行了"C:\ProgramData\Oracle\Java\javapath\javaw" - 这给出了错误。我怀疑这是随着 Java 8 的安装而来的。

我安装了几个 Java 版本(6,7 和 8),所以我从 PATH 中删除了该条目并尝试再次重启 Eclipse,这很好。

如果它不适合您,则需要升级 JDK(在本例中为 Java 版本 - 8)。

有关如何编辑 PATH 变量的说明

如果您最近安装了 Java 8 并卸载了 Java 7,请安装 JDK 8 并重试。