无法启动 Eclipse - Java 已启动但返回退出代码 = 13
Posted
技术标签:
【中文标题】无法启动 Eclipse - Java 已启动但返回退出代码 = 13【英文标题】:Can't start Eclipse - Java was started but returned exit code=13 【发布时间】:2012-07-12 18:43:24 【问题描述】:我正在尝试第一次使用 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。
快捷方式目标:"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
【问题讨论】:
"Program Files (x86)" 是 Windows 近来倾向于放置 32 位内容的地方。我不确定如何检查您的 Java 版本,但您可以随时卸载并重新下载。 另见***.com/questions/4945178/…和***.com/questions/6166795/…和***.com/questions/8230853/… @user1522092 你到底是怎么访问错误消息文本的?在我的电脑上无法复制,我必须在键盘上输入... @TomášZato 选择该错误消息并使用快捷键 - Ctrl + C。它将被复制。 由于自动 Java 更新,也可能“突然”发生类似的错误。 DNA's answer 在这种情况下帮助了我,在我(重新?)将 32 位 JDK 安装到没有空格的目录中并在 eclipse.ini 中指定“-vm C:\path_to_jdk\javaw.exe”之后 【参考方案1】:根据路径和文件名,您的 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 时会发生这种情况,这在 64 位 Windows 上很常见(例如,JRE 下载页面使用浏览器的位数来确定下载到的位数为您提供,并且许多人使用(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版本在控制台(命令提示符)中。在带有 64 位 Java 6 的 Windows 7 上,我得到:
java版本“1.6.0_27” Java(TM) SE 运行时环境 (build 1.6.0_27-b07) Java HotSpot(TM) 64 位服务器 VM(内部版本 20.2-b06,混合模式)注意第 3 行,这表明这是 64 位版本。
在 32 位版本上,您将获得如下内容:
Java HotSpot(TM) Client VM(build 20.1-b02,混合模式,共享)如果您使用的是 64 位机器,那么您可以安装 64 位 JDK 并卸载 32 位的。例如,在 Windows 10 上,只需转到“设置”并在“应用程序”下找到 Java。单击它,您将找到所有不同的版本。现在你可以选择卸载哪一个了。
【讨论】:
第三条评论帮助了我。我不明白什么是“Java HotSpot(TM) Client VM(build 20.1-b02,混合模式,共享)”。现在我知道我必须下载 java-64bit 那么我们如何让 Eclipse 使用正确的 Java 可执行文件/版本? 答案展示了如何找出已安装的Java版本。缺少的是需要什么Java版本! @ingomueller.net 所需的位取决于下载的 Eclipse 位。 我将 64 位 Java 版本的路径移到列表顶部,将 32 位版本的路径移到最后。现在 Eclipse 像冠军一样开始了。【参考方案2】:这可能是由于内存太少。您可以修改 eclipse.ini 文件以增加内存。这样的事情可能会对您有所帮助:FAQ How do I increase the heap size available to Eclipse?
【讨论】:
【参考方案3】:解决方法很简单:将“eclipse”文件夹放在“C:/Program Files”上。如果不行,把它放到“C:/Program Files (x86)”中。
【讨论】:
此解决方案以及删除完整路径并仅使用“Javaw.exe”对我有用。 如果您正在使用托管 Windows 实例,请注意此解决方案。大多数 IT/Sec 域都将 Program Files 目录树锁定以进行 fubars eclipse 的写访问。 我在使用 Lua 开发工具时遇到了同样的问题,这个解决方案对我有用!【参考方案4】:有史以来最奇怪的修复。查看 Eclipse 路径,确保没有奇怪的字符(如 !
、#
和 @
)。它对我有用。
【讨论】:
这是否有未解决的问题?【参考方案5】:我遇到了同样的问题,Java 已启动但返回退出代码=13。
我的解决方案是为 Windows 属性创建一个环境变量变量名 = PATH 变量值 = 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 中添加了一行。
这对我有用。
【讨论】:
我更新了java,所以java更新改变了环境。可变值,固定环境。变种。值,所以它开始工作了。 感谢 Mohit,我也更新了 firefox 的 java 并且路径变量更新为 C:\ProgramData\Oracle\Java\javapath; .因此,eclipse没有被初始化。再次感谢。 谢谢Katusepi ...在我的情况下它就像一个魅力...但我想知道在没有我(管理员)权限的情况下环境变量如何在Windows中更改.. !!! 同样的问题,路径不正确 谢谢,这为我节省了很多时间。在我这边,我必须安装 64 位 jdk 并更改更新已更改的环境变量。【参考方案6】:确保 Eclipse 路径中没有特殊字符(%
、$
、#
等)。
【讨论】:
这是给我的!我在桌面上有我的 eclipse 文件夹,并且活动用户的用户名中有一个特殊字符。 这已经被bello's answer 覆盖,大约在 1/2 年前发布。【参考方案7】:我遇到了同样的问题。我使用的是 64 位操作系统的 Windows 8。我只是将路径更改为Program Files (x86)
,然后它就开始工作了。我把这一行放在 eclipse.ini 文件中:
-vm
C:\Program Files (x86)\Java\jre7\bin\javaw.exe
【讨论】:
我是 64 位的。当我为 64 位安装jdk1.8.0_20
时,它要求我重新启动。我做到了。它在Program Files (x86)
中留下了一个JRE,在64 位Program Files
中只留下了一个DLL(没有javaw.exe
),所以我将-vm
指向Program Files (x86)
。我仍然得到code=13
。有了这个ashout.com/fix-java-started-returned-exit-code13-eclipse,我意识到位版本“应该”匹配是或是。所以我第二次运行相同的 JDK 安装程序。令人惊讶的是,它部署了第一次丢失的新文件。现在它可以与C:\Program Files\Java\jdk1.8.0_20\bin\javaw.exe
中的-vm
一起使用。
文件eclipse.ini
中真的有两行吗?
@PeterMortensen 是的,你试过了吗【参考方案8】:
我卸载了 Java update 25,问题解决了。
【讨论】:
那可能是因为您使用的是jdk 1.7,并且浏览器插件已经安装了java 8 update 25,用于视频。如果您将 jdk 升级到 1.8,在这种情况下,此错误将消失。要么升级jdk,要么卸载插件。奇怪的解决方案。 我更新了我的 java 版本,因为浏览器插件需要更新。无论如何它都不起作用,我最终没有让 Eclipse 完全正常工作。太烂了!【参考方案9】:如果您在同一台机器上安装了多个 Java 版本,则可能会发生这种情况。为了解决这个问题,我做了以下事情:
-
检查了当前的 JAVA_HOME 值。在 Windows 中,回显
%JAVA_HOME%
访问了javaw.exe的路径
替换了指向 Java 主位置的快捷方式。
【讨论】:
【参考方案10】:如果您在具有 32 位 JRE 的 PC 上安装 64 位 Eclipse 版本,这肯定会发生。
因此解决方案非常简单:您需要通过更新其中任何一个来同步它们。当下载 Oracle Fusion 中间件并且 Eclipse 需要 32 位环境而您的 JRE 是 64 位并且您的 JAVA 主目录指向 64 位 JDK 时,就会发生这种情况。
【讨论】:
确实是我的情况。 32 位和 64 位之间的不匹配是经典的。在我使用 java -version 之前,我什至不记得我是否下载了 64 位版本【参考方案11】:我发现我错误地安装了 32 位 Eclipse,并试图将它与 64 位 JRE 一起使用,这就是我收到此错误的原因。要查看您安装的是 32 位还是 64 位 Eclipse,请参阅此答案:https://***.com/a/9578565/191761
【讨论】:
【参考方案12】:如果您最近安装了 Java 8 并卸载了 Java 7,请安装 JDK 8 并重试。
【讨论】:
这对我有用。我安装了 Java 8(我有 J7),但我忘记安装 JDK8。所以我做到了,然后“瞧”。谢谢! 这在安装 Java 8 后对我有用,即使我从未卸载过任何其他版本的 java。 Mansour - 在 Java 8 中,Oracle 将先前版本的卸载与安装捆绑在一起。如果您在安装时选择了该选项,卸载可能会一无所获。 我实际上只需要运行时拒绝安装 SDK。 需要明确的是,exit code=13
总是是由 Eclipse 和 JVM 之间的位不匹配引起的。人们可以通过多种方式达到这一点,但最终它不是由特定版本的 Java(6 vs. 7 vs. 8)或您使用 JRE 还是 JDK 引起的 - 它总是植根于一点-ness 不匹配。请参阅上面接受的答案。【参考方案13】:
我收到此错误并发现我的 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
【讨论】:
我刚刚发现了这个问题,并注意到在我的 PATH 环境变量前面添加了相同的路径。我昨天刚刚安装了 VirtualBox,所以我认为这是罪魁祸首。 我遇到了同样的问题并尝试了不同的选项,但只有在从 PATH 变量中删除条目“C:\ProgramData\Oracle\Java\javapath”后才解决了这个问题。好收获! 伟大的收获!伙计们检查您的 Env.PATH 变量并删除此 C:\ProgramData\Oracle\Java\javapath;...我猜它是在 JRE8 更新后添加的。 so.. oracle 不仅删除了我的 java7 路径变量,而且现在使用“ProgramData”? wtf? 当您可以将条目指向正确的目录时,为什么要删除它?【参考方案14】:我刚刚在设置我的 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 位。
【讨论】:
【参考方案15】:我遇到了同样的问题。我已经安装了版本 8 并更新了 25 32 位。
要解决此问题,请安装 Java SE Development Kit 7 Update 71(64 位)。然后通过 appwiz.cpl,删除其他版本,即 Java Update 25。完成。
【讨论】:
【参考方案16】:我尝试了一些解决方案,但对我不起作用。
终于,我找到了另一种方式,...
转到环境变量 → 系统变量
将C:\Program Files\Java\jdk1.7.0_02\bin\javaw.exe设置为系统变量中的路径。
试试看。它对我有用...
【讨论】:
我做了所有其他解决方案,但它们不适用于我的 Windows 10。无论如何,您的解决方案对我有用并节省了我很多时间.... 敬礼!!!。非常感谢。【参考方案17】:对我来说,解决方案是进入(在 Windows 8.1 上):
System > Advanced system setting > Environment Variables
在“路径”变量中的“系统变量”下首先有以下内容:
C:\ProgramData\Oracle\Java\javapath;
我删除了这个,Eclipse 又开始工作了!
【讨论】:
在 Windows 7 上也工作过,似乎 Java 8 的安装搞乱了环境变量。 这对我有用(Win7 x64)。我怀疑这个条目是在为 Firefox 安装 32 位 jre 8 后添加的。 谢谢你!我有操作系统(win7 x64),这个解决方案提示 eclipse 启动! 完美的工作就像一个魅力:) 在 Windows 8 64 位中为我工作 我也做了同样的事情,我只是把 'C:\ProgramData\Oracle\Java\javapath;'在我的“路径”的末尾(最后一个条目),所以 Eclipse 在“错误”之前找到“正确”的 JVM。【参考方案18】:通过执行以下步骤解决了该问题。
Eclipse 从 'C:\ProgramData\Oracle\Java\javapath'
文件夹结构将包含以下可执行文件的快捷方式, 一世。 java.exe ii. javaw.exe iii. javaws.exe
对我来说,可执行路径指向我的 Program Files(x86)(32 位应用程序的主目录)文件夹位置
我将其更正为 Program Files(其中包含 64 位应用程序),问题得到解决
请找到相同的屏幕截图。
【讨论】:
这意味着这是***答案中提到的 32 位与 64 位的问题。 :) 虽然干杯 提到的这些文件是在我的 PC 上创建或更改的,是 Oracle 的最后一次更新 - 使其无法正常工作!那真的不应该是...... 32位更新只是默默地删除了64位安装 如何将其更改为 64 位程序文件?我右键单击 java.exe > 属性 > 快捷方式选项卡。目标字段无法更改。 您只需删除 32 位文件并从 64 位路径(在程序文件中)复制相同的文件 您只需删除 32 位文件并从 64 位路径(在 Program files\Common Files\Oracle\Java\javapath 内)复制相同的文件【参考方案19】:我有一个 x64 位 JDK。我的路径设置中没有任何内容。所以我安装了x86 JDK。这完美解决了我的问题。
【讨论】:
【参考方案20】:我尝试了以下解决方案:
我从路径 C:\Program Files\Java\jdk1.7.0_71\bin 创建了 javaw.exe 的快捷方式,并将其粘贴到路径 C:\ProgramData\Oracle\ Java\javapath.
之后,我启动了 Eclipse,它对我有用。
【讨论】:
【参考方案21】:如果没有任何效果,那么您可以尝试的最后一个解决方案是从您的计算机上完全卸载 Java,然后重新安装,并确保路径变量设置正确。
【讨论】:
【参考方案22】:我遇到了这个问题。我通过 Chrome 安装了 Java 8 update 25,然后尝试启动 Eclipse 的程序给出了上述错误。
卸载该更新,Eclipse 再次运行。
【讨论】:
【参考方案23】:在我的 Windows 7 系统(64 位系统)上安装 Java 8 后,我遇到了类似的错误。
更改环境变量等没有帮助。所以我试图删除 Java Update 8,但这也没有帮助。下载并安装 64 位版本的 Java 8 SDK 解决了我的问题。我希望这会有所帮助。
【讨论】:
【参考方案24】:在将 JDK 从 1.7 升级到 1.8 后,我遇到了同样的问题。我正在使用 Eclipse 4.4 (Luna)。将JDK降级到1.7后错误消失了。
【讨论】:
【参考方案25】:这里的最佳答案太长了。我无法发表评论,所以我添加了我的答案。
-
到这里:
http://www.oracle.com/technetwork/java/javase/downloads/index.html
下载最新的 SDK(如果您的计算机是 x64,则当然适用于 x64)
安装它
现在聚会结束了,是时候使用 Eclipse 了;)
【讨论】:
【参考方案26】:在我的情况下,干净地重新安装 Java JDK 就成功了。我现在像魅力一样运行Eclipse 4.4 (Luna)。
【讨论】:
【参考方案27】:我忘记安装 JDK 时收到此消息。
【讨论】:
如果java不在你的机器上,eclipse怎么能说java已经启动了? 它对我有用 :) 正常更新到 1.8 后,我没有手动安装 JDK。现在一切正常。 @AmitKumar 可能选择了默认浏览器 Java 安装。【参考方案28】:我也遇到了同样的问题。结果发现环境变量 Path 指向的 Java 版本不正确。
请检查环境变量并将其指向正确的 Java。例如:
C:\Program Files (x86)\Java\jdk1.6.0_17\bin
要检查环境变量,请转到:
Computer → properties → Advanced system settings → Advanced -> Environment variables
【讨论】:
【参考方案29】:向 .ini 文件添加 vm 参数对我有用
-vm
C:\Program Files\Java\jdk1.7.0_65\bin\javaw.exe
【讨论】:
我的情况是 Tomcat 服务器(在 eclipse 中)没有从之前的运行中正确停止。所以,我不得不从 Windows 任务管理器中杀死 eclipse。此后日食不再开始。当我添加这个解决方案时,它又开始工作了。看起来很奇怪,但这确实是解决办法。【参考方案30】:原来我只安装了 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\
【讨论】:
也许你的意思是“jre-8u45-windows-x64.exe”而不是“jdk-8u45-windows-x64.exe”以上是关于无法启动 Eclipse - Java 已启动但返回退出代码 = 13的主要内容,如果未能解决你的问题,请参考以下文章
eclipse sts 无法启动 tomcat:端口已在使用中
无法在 Eclipse 中启动 IBM MobileFirst Foundation Studio 8.0
由于 Unsupported major.minor 版本 52.0,Eclipse 无法启动