我正在尝试使用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
答案 0 :(得分:708)
您的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下载页面使用浏览器的位数来确定下载到哪个位为您提供,许多人使用(d)32位浏览器,即使它们运行的是64位Windows。)
解决此问题的最佳方法是假设您的系统上实际上有64位JRE或JDK,那就是在eclipse.ini
中指定您希望它使用哪个JVM。这些说明在the Eclipse wiki page中有详细说明,但基本上您必须在ini文件中指定-vm
选项 - 请务必仔细阅读维基页面,因为格式非常具体。
强烈建议在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)
答案 1 :(得分:238)
我收到此错误,发现我的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)。
答案 2 :(得分:179)
如果您最近安装了Java 8并卸载了Java 7,请安装JDK 8并重试。
答案 3 :(得分:166)
有OS,JDK和Eclipse bitness的组合。就我而言,我在64位操作系统上使用64位JDK和32位Eclipse。在将JDK降级到32位后,Eclipse开始工作。
请使用以下组合之一。
答案 4 :(得分:117)
对我来说,解决方案是进入(在Windows 8.1上):
System > Advanced system setting > Environment Variables
在“Path”变量的“系统变量”下,首先出现以下内容:
C:\ProgramData\Oracle\Java\javapath;
我删除了这个,Eclipse再次工作了!
答案 5 :(得分:63)
我遇到了同样的问题, 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中添加了一行。
这对我有用。
答案 6 :(得分:23)
通过执行以下步骤解决了该问题。
Eclipse从中找到JAVA可执行文件 'C:\ ProgramData \甲骨文\爪哇\ javapath'
文件夹结构将包含以下可执行文件的快捷方式,
一世。 java.exe
II。 javaw.exe
III。 javaws.exe
对我来说,可执行路径指向我的程序文件(x86)(32位应用程序的主页)文件夹位置
我已将其更正为程序文件(其中包含64位应用程序)并且问题已得到解决
请找到相同的屏幕截图。
答案 7 :(得分:21)
有史以来最奇怪的修复。查看Eclipse路径,确保没有奇怪的字符(例如!
,#
和@
)。它对我有用。
答案 8 :(得分:20)
为.ini文件添加vm参数为我工作
-vm
C:\Program Files\Java\jdk1.7.0_65\bin\javaw.exe
答案 9 :(得分:10)
在我的案例中,干净地重新安装了Java JDK。我现在正在运行Eclipse 4.4(Luna)魅力。
答案 10 :(得分:10)
找到eclipse.ini:
通常在C:\Users\xxx\eclipse\jee-neon\eclipse
添加
-vm
C:\Program Files (x86)\Java\jre7\bin\javaw.exe
后
--launcher.appendVmargs
答案 11 :(得分:10)
我卸载了Java更新25,问题解决了。
答案 12 :(得分: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\
答案 13 :(得分:9)
当我忘记安装JDK时,我收到了此消息。
答案 14 :(得分:8)
解决方案很简单:将“eclipse”文件夹放在“C:/ Program Files”上。如果它不起作用,请将其放在“C:/ Program Files(x86)”中。
答案 15 :(得分:8)
这里最好的答案太长了。我无法评论,所以我添加了答案。
答案 16 :(得分:7)
我遇到了同样的问题。我使用的是Windows 8和64位操作系统。我刚刚将路径更改为Program Files (x86)
然后就开始工作了。我把这行放在eclipse.ini文件中:
-vm
C:\Program Files (x86)\Java\jre7\bin\javaw.exe
答案 17 :(得分:6)
如果在具有32位JRE的PC上安装64位Eclipse版本,则可以保证这种情况发生。
因此解决方案非常简单:您需要通过更新任何一个来同步它们。当下载Oracle Fusion中间件并且Eclipse期望32位环境而JRE为64位并且您的JAVA主目录指向64位JDK时,就会发生这种情况。
答案 18 :(得分:6)
答案 19 :(得分:6)
确保您在Eclipse路径中没有特殊字符(%
,$
,#
等。
答案 20 :(得分:5)
我尝试了一些解决方案,但不适合我。
最后,我找到了另一种方式,......
转到环境变量→系统变量
将 C:\ Program Files \ Java \ jdk1.7.0_02 \ bin \ javaw.exe 设置为系统变量中的路径。
试试吧。它对我有用......
答案 21 :(得分:5)
我尝试了以下解决方案:
我从路径 C:\ Program Files \ Java \ jdk1.7.0_71 \ bin 创建了javaw.exe的快捷方式,并将其粘贴到路径 C:\ ProgramData \ Oracle \爪哇\ javapath
之后,我启动了Eclipse,它对我有用。
答案 22 :(得分:5)
我有这个问题。我通过Chrome安装了Java 8更新25,之后尝试启动Eclipse时出现了上述错误。卸载了该更新,Eclipse再次运行。
答案 23 :(得分:5)
我也遇到了同样的问题。事实证明,环境变量 Path 指向了不正确的Java版本。
请检查环境变量并将其指向正确的Java。例如:
C:\Program Files (x86)\Java\jdk1.6.0_17\bin
要检查环境变量,请转到:
Computer → properties → Advanced system settings → Advanced -> Environment variables
答案 24 :(得分: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\
如果没有,请将其设置为并再次运行。
答案 25 :(得分:4)
这可能是由于记忆太少。您可以修改eclipse.ini文件以增加内存。这样的事情可能会对您有所帮助: FAQ How do I increase the heap size available to Eclipse?
答案 26 :(得分:4)
在我的Windows 7系统,64位系统上安装Java 8后,我遇到了类似的错误。
更改环境变量等没有帮助。所以我试图删除Java Update 8,但这也没有帮助。下载并安装64位版本的Java 8 SDK解决了我的问题。我希望这会有所帮助。
答案 27 :(得分: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位JRE与64位Eclipse配合使用。只需确保它们匹配,因为Windows 8.1默认会为您提供32位。
答案 28 :(得分:4)
我将JDK从1.7升级到1.8后出现了同样的问题。我正在使用Eclipse 4.4(Luna)。将JDK降级为1.7后错误消失。
答案 29 :(得分:3)
这种类型的错误基本上是由于在不同版本的Eclipse中使用不同版本的Java。
假设您在系统上安装64位JDK。然后确保使用它安装64位版本的Eclipse。
如果要在系统上安装32位JDK,请确保使用它安装32位版本的Eclipse。
我遇到了类似的问题。我安装了32位JDK,并尝试使用64位Eclipse。
但是当我在我的系统上安装64位JDK时,Eclipse开始工作没有任何问题。
建议在具有32位配置的系统上更好地安装32位版本的Java以及32位版本的Eclipse,对于64位系统也是如此。
这有助于提高系统性能。
答案 30 :(得分:3)
在“路径”变量中已删除 “ C:\ ProgramData \ Oracle \ Java \ javapath”并将其替换为“ C:\ Program Files \ Java \ jdk1.8.0_212 \ bin”
对我有用。
答案 31 :(得分:2)
如果没有任何效果,那么您可以尝试的最后一个解决方案是从您的计算机中完全卸载Java,然后再次安装它,并确保正确设置路径变量。
答案 32 :(得分:2)
我有一个x64位JDK。我的路径设置中没有任何内容。所以我安装了x86 JDK。这完全解决了我的问题。
答案 33 :(得分:2)
冒着不给现有答案增加很多价值的风险,但我自己经历了所有这些混乱,我想看看我能否巩固我如何解决问题:
保持与正常机器环境不同的开发。原因是您的计算机上可能运行的应用程序很多,您不知道需要偶尔更新Java,例如银行和安全应用程序。当这些更新发生时,它们会更改环境变量,因此如果您在开发环境中使用这些更新,则更新几乎肯定会破坏您的Eclipse设置。
安装Eclipse的版本,32位和64位,具体取决于您的插件等。原因是许多插件仍然需要32位,并且尝试将它们安装到64位环境中会导致许多模糊(非常模糊)的错误。这意味着您可能必须为Java EE,PHP,Python,汇编程序等开发环境提供单独的Eclipse实例。这可能看起来很麻烦,但对我来说这是一种祝福。
再次安装两个Java运行时一个32位和一个64位,然后为每个安装编辑eclipse.ini以指向正确的JRE,不环境中的JRE HOME变量。我在C:\Java\64bit\jdk1.7.0_15\
和C:\Java\32bit\etc
中创建了一个目录,并在eclipse.ini文件中添加-vm C:\Java\64bit\jdk1.7.0_15\bin
行以指向所需的Java运行时。
完成上述操作后,您可以根据需要安装Java SDK更新,但您的开发环境永远不会中断。如果需要更新开发运行时环境,只需更改eclipse.ini
中的-vm路径即可答案 34 :(得分:2)
如果您在同一台计算机上安装了多个版本的Java,则可能会发生这种情况。为了解决这个问题,我做了以下几点:
%JAVA_HOME%
答案 35 :(得分:1)
我发现我错误地安装了32位Eclipse,并尝试将其与64位JRE一起使用,这就是我收到此错误的原因。要查看是否安装了32位或64位Eclipse,请参阅以下答案:https://stackoverflow.com/a/9578565/191761
答案 36 :(得分:1)
如果您的计算机安装了多个Java版本,则只需告诉eclipse哪个地方以及从哪个地方使用javaw.exe。
在我的情况下,我也有IBM JDK,也有oracle JDK,但是为了获取eclipse,在eclipse目录的 eclipse.ini 文件中的以下行中添加了它。
-vm
C:/WAS9DEV/java/8.0/bin/javaw.exe
在上面的示例中,必须替换到Java文件夹的路径
希望有帮助。
答案 37 :(得分:1)
我遇到了同样的问题。我安装了版本8并更新了25位32位。
要修复,请安装Java SE Development Kit 7 Update 71(64位)。然后通过appwiz.cpl删除另一个版本,即Java Update 25.完成。
答案 38 :(得分:1)
最重要的答案对我没有用处:我没有定义Java路径的环境变量或路径中没有Java。
但是,路径C:\ ProgramData \ Oracle \ Java \ javapath \ javaw.exe始终出现在-vm
选项的Eclipse 4.5(Mars)错误弹出窗口中,即使我试图覆盖文件eclipse的.ini。
我通过打开命令提示符来解决这个问题,cd了eclipse.exe所在的目录并使用MKLink:
C:\EclipseMars> mklink javaw.exe "C:\Program Files\Java\jdk1.7.0_79\bin"
symbolic link created for javaw.exe <<===>> C:\Program Files\Java\jdk1.7.0_79\bin
不需要更改eclipse.ini。
我确实尝试在eclipse.ini中指定-vm
选项,并将其考虑在内,但在错误弹出窗口中,-vm
选项出现两次,即使只有一个{{1}在eclipse.ini中出现。
在我的eclipse.ini中,我没有-vm
选项,只是符号链接似乎已经纠正了它。
答案 39 :(得分:1)
我已经通过安装JDK(v7更新80)解决了这个问题,而我之前只安装了JRE。
注意:这是IBM的RTC软件(基于Eclipse构建)。
答案 40 :(得分:0)
您必须转到eclipse的安装文件夹,然后必须更改eclipse.ini文件。
您必须添加
-vm
C:\ Program Files \ Java \ jdk1.8.0_202 \ bin \ javaw.exe
您的eclipse.ini文件将如下图所示
答案 41 :(得分:0)
就我而言,我有两个不同的JDK,分别是IBM和Oracle JDK。我将IBM JDK放在环境变量中的Oracle JDK的顶部,然后它起作用了。注意:我将使用IBM JDK,所以我上了。
答案 42 :(得分:0)
可能是JDK组合问题或JDK版本问题,请选择适当的问题。我正在使用64位操作系统,64位JDK,64位Eclipse IDE的组合。
答案 43 :(得分:-1)
我遇到了同样的问题...安装了STS,但始终得到“java已启动但返回退出代码= 13”消息。我的问题是我使用的是https://spring.io/tools/sts的默认安装文件,该文件不是特定于处理器的。我不得不更深入地下载64位版本。您下载的是哪个版本并不直观。一旦我得到了64位版本(请注意,zip文件在名称中仍然包含'win32',只需在结尾附加'-64')就可以了。