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

问题描述 投票:906回答:40

我正在尝试使用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位版本,我选择这是因为我有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
java android windows eclipse 32bit-64bit
40个回答
171
投票

OS,JDK和Eclipse bitness有工作组合。就我而言,我在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位)

11
投票

找到eclipse.ini:

通常在C:\Users\xxx\eclipse\jee-neon\eclipse,添加

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

--launcher.appendVmargs

10
投票

我卸载了Java更新25,问题解决了。


10
投票

在我的情况下,干净的Java JDK重新安装就行了。我现在正在运行Eclipse 4.4(Luna)。


9
投票

我忘记安装JDK时收到此消息。


9
投票

原来我只安装了32位Java运行时。

C:\Program Files (x86)\Java\jre1.8.0_45\

所有Eclipse真正想要的是我安装64位Java运行时。 <=已解决

Java SE Runtime Environment 8u45  jdk-8u45-windows-x64.exe

http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html

Confirm your installation by checking you now have this folder

    C:\Program Files\Java\jre1.8.0_45\

8
投票

这里最好的答案太长了。我不能评论所以我添加了我的答案。

  1. 去这里:http://www.oracle.com/technetwork/java/javase/downloads/index.html
  2. 下载最新的SDK(如果您的计算机是x64,当然是x64)
  3. 安装它
  4. 现在聚会结束了,是时候使用Eclipse;)

8
投票

解决方案很简单:将“eclipse”文件夹放在“C:/ Program Files”上。如果它不起作用,请将其放在“C:/ Program Files(x86)”中。


7
投票

我有同样的问题。我使用的是Windows 8和64位操作系统。我刚刚改变了Program Files (x86)的路径然后开始工作了。我把这行放在eclipse.ini文件中:

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

6
投票

确保在Eclipse路径中没有特殊字符(%$#等)。


6
投票

如果在具有32位JRE的PC上安装64位Eclipse版本,则可以保证发生这种情况。

因此解决方案非常简单:您需要通过更新任何一个来同步它们。当下载Oracle Fusion中间件并且Eclipse期望32位环境而JRE是64位且JAVA主目录指向64位JDK时,就会发生这种情况。


717
投票

您的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。 the Eclipse wiki page中详细说明了这些说明,但基本上你必须在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) 

6
投票
  1. 在系统环境变量下,确保删除“C:\ ProgramData \ Oracle \ Java \ javapath”。
  2. 在系统环境变量下,确保添加“C:\ Program Files \ Java \ jdk1.8.0_131 \ bin”。

enter image description here


5
投票

我有这个问题。我通过Chrome安装了Java 8 update 25,并且尝试启动Eclipse后发现了上述错误。

卸载该更新,Eclipse再次运行。


5
投票

我尝试了一些解决方案,但没有为我工作。

最后,我找到了另一种方式,......

转到环境变量→系统变量

将C:\ Program Files \ Java \ jdk1.7.0_02 \ bin \ javaw.exe设置为系统变量中的路径。

试试吧。它对我有用......


5
投票

我尝试了以下解决方案:

我从路径C:\ Program Files \ Java \ jdk1.7.0_71 \ bin创建了javaw.exe的快捷方式,并将其粘贴到路径C:\ ProgramData \ Oracle \ Java \ javapath中。

之后,我启动了Eclipse,它对我有用。


5
投票

我也遇到了同样的问题。原来,环境变量Path指向一个不正确的Java版本。

请检查环境变量并将其指向正确的Java。例如:

C:\Program Files (x86)\Java\jdk1.6.0_17\bin

要检查环境变量,请转到:

Computer → properties → Advanced system settings → Advanced -> Environment variables

4
投票

我刚刚在设置Windows 8.1 PC时遇到了同样的问题。正如上面提到的@George Papatheodorou(抱歉我不能添加注释),Eclipse和JRE必须是64位或32位。

但是,对于Windows 8 / 8.1环境,默认情况下你将获得32位JRE(我不知道在哪里更改下载的默认值),如下所述:http://java.com/en/download/faq/win8_faq.xml

我使用的是64位Eclipse,因此存在差异。然后我安装了32位Eclipse,这次一切正常。

因此,在打扰更改任何环境变量之前,请检查您的JRE和Eclipse版本。

当然,您可以在64位Eclipse中使用64位JRE。只需确保它们匹配,因为Windows 8.1默认情况下会为您提供32位。


4
投票

在我的Windows 7系统,64位系统上安装Java 8后,我遇到了类似的错误。

改变环境变量等没有帮助。所以我试图删除Java Update 8,但这也没有帮助。下载并安装64位版本的Java 8 SDK解决了我的问题。我希望这有帮助。


4
投票

将JDK从1.7升级到1.8后,我遇到了同样的问题。我正在使用Eclipse 4.4(Luna)。将JDK降级到1.7后,错误消失了。


4
投票

请检查您是否在“环境变量”部分中设置了两个JAVA路径。如果你已经安装了两个版本的JDK,那么可能是,然后仔细检查你是否已经把PATH for Java放在下面了。

PATH -->  C:\ProgramData\Oracle\Java\javapath

并且

JAVA_HOME ---> C:\Program Files\Java\jdk1.7.0_02\bin

如果两者都存在,那么可能会发生这种错误。

如果没问题,那么请在“.ini”文件中检查以下区域是否正常。打开“.ini”文件并检查

 -VM  path is  C:\Program Files\Java\jdk1.7.0_79\bin\

如果没有,请设置它并再次运行。


4
投票

这可能是由于记忆太少。您可以修改eclipse.ini文件以增加内存。这样的事情可能会对你有所帮助:FAQ How do I increase the heap size available to Eclipse?


239
投票

我收到此错误,发现我的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)。

Instructions on how to edit PATH variable


3
投票

这种类型的错误基本上是由于使用不同版本的Java和不同版本的Eclipse。

假设您在系统上安装64位JDK。然后确保使用它安装64位版本的Eclipse。

如果要在系统上安装32位JDK,请确保使用它安装32位版本的Eclipse。

我有类似的问题。我已经安装了32位JDK,并尝试使用64位Eclipse。

但是当我在我的系统上安装64位JDK时,Eclipse开始工作没有任何问题。

建议在具有32位配置的系统上更好地安装32位版本的Java以及32位版本的Eclipse,对于64位系统也是如此。

这有助于提高系统的性能。


179
投票

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


117
投票

对我来说,解决方案是进入(在Windows 8.1上):

System > Advanced system setting > Environment Variables 

在“Path”变量的“系统变量”下,首先出现以下内容:

C:\ProgramData\Oracle\Java\javapath;

我删除了这个,Eclipse再次工作!


63
投票

我有同样的问题,Java已启动但​​返回退出代码= 13。

我的解决方案是为Windows属性变量创建一个环境变量name = PATH variable value = C:\ Program Files \ Java \ jdk1.7.0_02 \ bin,而不是C:\ Program Files(x86)\ Java \ jre7 \ bin。

接下来,我在文件eclipse.ini→C:\ Program Files \ Java \ jdk1.7.0_02 \ bin \ javaw.exe中添加了一行。

这对我有用。


23
投票

通过执行以下步骤解决了该问题。

  1. Eclipse从'C:\ ProgramData \ Oracle \ Java \ javapath'中找到JAVA可执行文件
  2. 文件夹结构将包含以下可执行文件的快捷方式, 一世。 java.exe的 II。 javaw.exe的 III。 javaws.exe
  3. 对我来说,可执行路径指向我的程序文件(x86)(32位应用程序的主页)文件夹位置
  4. 我将其更正为Program Files(其中包含64位应用程序),问题得到解决

请找到相同的截图。


21
投票

为.ini文件添加vm参数对我有用

-vm
C:\Program Files\Java\jdk1.7.0_65\bin\javaw.exe

21
投票

有史以来最奇怪的修复。查看Eclipse路径,确保没有奇怪的字符(如!#@)。它对我有用。

© www.soinside.com 2019 - 2024. All rights reserved.