Java已启动,但返回退出代码= 13

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

在第一次尝试启动没有任何参数指定Java VM的Eclipse时,我收到一条错误消息,说它无法在Eclipse文件夹中找到名为javaw.exe的Java VM,所以我找到了Java的安装位置并将该位置指定为快捷方式的目标中的参数。 现在我得到一个不同的错误,“Java已启动,但返回退出代码= 13”。

类似的问题似乎表明这是一个32位/ 64位的冲突,但是我下载了64位版本的Eclipse和Java(RE 7u5),我选择它的64位版本为99%,因为我有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)Javajre7binjavaw.exe
    -Xms40m
    -Xmx512m
    -XX:MaxPermSize=256m
    -jar C:Program FilesEclipse-SDK-4.2-win32-x86_64eclipseplugins/org.eclipse.equinox.launcher_1.30v20120522-1813.jar
    -os win32
    -ws win32
    -arch x86_64
    -showsplash C:Program FilesEclipse-SDK-4.2-win32-x86_64eclipsepluginsorg.eclipse.platform_4.2.0.v201206081400splash.bmp
    -launcher C:Program FilesEclipse-SDK-4.2-win32-x86_64eclipseeclipse.exe
    -name Eclipse
    --launcher.library C:Program FilesEclipse-SDK-4.2-win32-x86_64eclipseplugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.200.v201205221813eclipse_1503.dll
    -startup C:Program FilesEclipse-SDK-4.2-win32-x86_64eclipseplugins/org.eclipse.equinox.launcher_1.30v20120522-1813.jar
    --launcher.overrideVmargs
    -exitdata 1e30_5c
    -vm C:Program Files (x86)Javajre7binjavaw.exe
    -vmargs
    -Xms40m
    -Xmx512m
    -XX:MaxPermSize=256m
    -jar C:Program FilesEclipse-SDK-4.2-win32-x86_64eclipseplugins/org.eclipse.equinox.launcher_1.30v20120522-1813.jar
    

    有OS,JDK和Eclipse位的工作组合。 就我而言,我在64位操作系统上使用64位JDK和32位Eclipse。 在将JDK降级到32位后,Eclipse开始工作。

    请使用以下组合之一。

  • 32位操作系统,32位JDK,32位Eclipse(仅限32位)
  • 64位操作系统,32位JDK,32位Eclipse
  • 64位操作系统,64位JDK,64位Eclipse(仅限64位)

  • 您的Eclipse版本是基于路径和文件名的64位版本。 然而,它正在采用的Java版本是32位,正如它来自何处,表明了这一点:

    -vm C:Program Files (x86)Javajre7binjavaw.exe
    

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

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

    当系统安装了多个JVM时,可能会发生这种情况,在Windows 64位上经常出现这种情况(例如,JRE下载页面使用浏览器的位宽来确定要提供的位内容,许多人使用(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)
    

    请注意第三行,这表明这是一个64位版本。

    在32位版本中,您会得到如下所示的内容:

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

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

    C:ProgramDataOracleJavajavapath
    

    ...和Eclipse运行"C:ProgramDataOracleJavajavapathjavaw" - 给出错误。 我怀疑这是随着Java 8的安装而来的。

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

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

    链接地址: http://www.djcxy.com/p/5025.html

    上一篇: Java was started but returned exit code=13

    下一篇: How do we use runOnUiThread in Android?