我只是追加 -vm C:\ Program Files \ Java \ jre6 \ bin \ javaw.exe
在eclipse.ini中然后我尝试再次启动eclipse并得到此错误。给我如何解决或链接实际解决它。
这是我的eclipse.ini
-startup
plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.1.R36x_v20100810
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize 256m
--launcher.defaultAction
openFile
-vm
C:\Program Files\Java\jre6\bin\javaw.exe
-vmargs
-Xms40m
-Xmx384m
谢谢
答案 0 :(得分:179)
配置eclipse.ini以使用JRE6时遇到了同样的错误。事实证明,在运行32位版本的eclipse 3.7时,错误地将eclipse配置为使用64位JVM导致此错误。
正确的配置要求eclipse.ini -vm argumument使用“C:/ Program Files(x86)/”而不是“C:/ Program Files /".
确保您使用的JVM版本(32/64位)与eclipse版本(32/64位)匹配。
答案 1 :(得分:129)
它可能只是错误显示的方式(而不是它在eclipse.ini文件中的编写方式),但Eclipse.ini (Specifying the JVM)中有文字说明如下:
- -vm选项及其值(路径)必须位于不同的行上。
- 该值必须是Java可执行文件的完整绝对路径,而不仅仅是Java主目录。
- -vm选项必须在-vmargs选项之前发生,因为-vmargs之后的所有内容都直接传递给JVM
答案 2 :(得分:34)
查看消息框的第二行。在那里你可以看到实际上启动了哪个java运行时。我突然C:\ ProgramData \ Oracle \ Java \ javapath \ javaw.exe。这是在我安装了" chrome java updater" (Chrome浏览器呻吟:'你的java已经过时,你必须更新......')。
在此之前" chrome java update"我的日食(luna jee x64)开始没有错误。仔细观察后台我发现以下内容:chrome java updater(从Oracle站点开始)在env var PATH前面添加了C:\ ProgramData \ Oracle \ Java \ javapath。它包含三个符号链接,指向(x86)程序文件夹中最新的java 8 JRE安装 - >因此是一个32位的Java JRE。 Oracle用Java8取代了在system32(64位)中具有符号链接的旧技术。 SysWOW64(32位)。
同时我学到了。无论你最后执行的java安装程序(* .exe)都会让windows记住java flavor(32b或64b),结果是在更新后C:\ ProgramData \ Oracle \ Java \ javapath中的链接指向java安装记忆的味道。如果您有64b eclipse安装并遇到所描述的错误:只需重新安装最新的64b JDK。之后,java更新不再链接到32b版本。 eclipse 64b将在没有eclipse.ini条目的情况下正确启动。
答案 3 :(得分:32)
您需要检查您的PC是否具有64位或32位操作系统,然后同样适用于您的JDK(64位/ 32位)以及Eclipse(64位/ 32位)
确保它们都是一样的;如果没有,你需要下载符合你位数的那个。
答案 4 :(得分:19)
对于Eclipse:
在eclipse.ini
中添加了这两行第二行表示javaw.exe文件的JDK位置。
-vm
C:\ Program Files \ Java \ jdk1.7.0_60 \ bin \ javaw.exe
注意:在-vmargs之前放置-vm行,否则采用默认位置。
对于STS
在STS.ini中更改与上面相同的内容
答案 5 :(得分:17)
我也打了这个。事实证明,至少在我看来,这是因为尝试使用Win64版本的JRE和win32 Eclipse。我似乎win32 Eclipse需要一个win32 Java(在Oracle / Sun的Java安装程序列表中称为-586)。
我之所以使用两者的原因是我试图找出一个只在64位Eclipse中出现的错误,所以我需要一个32位来比较。
一旦我在我的机器上同时安装了“x64”(win64)和“i586”(win32)版本的JRE,一切正常并且没有错误13.您显然可以同时安装两者。
答案 6 :(得分:14)
错误意味着该版本的Eclipse是错误的JVM版本。该链接有更多详细信息:
http://www.ehow.com/how_4784069_terminated-exit-code-error-eclipse.html
答案 7 :(得分:4)
确保您使用的Eclipse和Java都是32位或64位。
你无法使用32位JRE运行64位eclipse。
java -version
Java HotSpot(TM)64-Bit
服务器VM
32位版本的JRE不会有64位。
答案 8 :(得分:4)
最近我遇到了同样的问题。我的eclipse版本不支持java版本8。
我意外地在我的机器上安装了jre 8,它通过附加" C:\ ProgramData \ Oracle \ Java \ javapath"自动更新了我的PATH变量。在eging中导致eclipse拿起这个版本(并忽略后来按顺序手动添加的1.6版本)并使用退出代码13崩溃。
我刚从路径中删除了这个字符串,这导致系统拿起我的旧版本,eclipse就开始了。
答案 9 :(得分:4)
我遇到了同样的问题,花了大约一个小时试图解决问题。 最后,它在路径中是一个'#'字符。
所以我将“C:\#IDE \ eclipse 3.7 \”重命名为“C:\ + IDE \ eclipse 3.7 \”,这解决了问题。
答案 10 :(得分:2)
在java更新之后,eclipse将无法启动,因为默认的jdk位置已更改。将以下行添加到eclipse.ini文件立即解决了我的问题:
-vm
C:\Program Files (x86)\Java\jdk1.7.0_75\bin\javaw.exe
我在vmargs之前添加了这些行。它看起来如下:
...
--launcher.defaultAction
openFile
-vm
C:\Program Files (x86)\Java\jdk1.7.0_75\bin\javaw.exe
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Dhelp.lucene.tokenizer=standard
-Xms40m
-Xmx512m
有关eclipse.ini的更多信息,请访问网站http://wiki.eclipse.org/Eclipse.ini#-vm_value:_Windows_Example
在我的情况下,我使用32位eclipse和java。如果您同时安装了32位和64位版本的java,请注意选择正确的版本。对于64位版本,请参阅目录
下的javaw.exe文件C:\Program Files\Java\jdk1.8.0_60\bin
答案 11 :(得分:2)
转到保存Eclipse的文件夹。查看启动日志中的配置文件夹。它将为您提供比退出代码13"。
更好的诊断功能答案 12 :(得分:2)
我在两台机器上遇到了与eclipse相同的问题。我安装了jre 32位。所以我删除了32位并安装了64位而且它工作得很好。
答案 13 :(得分:2)
每当看到此错误时,请转到配置目录并检查刚刚生成的日志文件。它应该有适当的异常堆栈跟踪。 Mine是一个我安装了更新的32位JRE(或JVM)的情况,这是添加到Path的默认Java。我的Eclipse安装是64位,这意味着它需要一个64位VM来运行其原生SWT库。所以我只是卸载了32位JVM并将其替换为64位JVM。
我想知道他们是否会改进这种报告机制,而不是在某个目录中静默生成日志文件。
答案 14 :(得分:2)
只需从http://java.com/en/download/manual.jsp
安装64位版本的JAVA并在64位安装程序提示的情况下卸载旧版本
答案 15 :(得分:1)
我使用的是Eclipse Juno,我不记得它是32位还是64位。我安装了Java 32位,这就是它失败的原因。然后我安装了Java 64位,Eclipse Juno再次运行。
我还删除了环境变量(PATH)中的任何java或jre引用。
答案 16 :(得分:1)
在我看来,关于Eclipse和Java的不同体系结构的大多数答案都是错误的,这可以使用例如Windows下的Process Monitor。 -vm
选项用于运行特定版本的java,重点是,已启动配置的进程并自行运行所有Java代码,这就是为什么要配置{ {1}}。在这种情况下, DON' T 需要具有相同的Eclipse和Java架构,但可以愉快地混合使用32位和64位。如果 DON' T 使用java.exe
,那么只有 CAN' T 混合使用,但是让Eclipse使用jvm将Java本机加载到自己的进程中.dll等。后一种行为是Eclipse的默认行为,但如果您在-vm
中正确配置-vm
,则不再是这种情况。
如果您不相信我,请使用不同的Eclipse和Java体系结构自行进行一些测试,并配置eclipse.ini
或不正确配置。最后,这正是提问者在对已接受答案的评论中所描述的内容:
Cannot run Eclipse; JVM terminated. Exit code=13
他告诉64位JDK现在正在运行,但在他的屏幕截图中可以看到他的Eclipse是32位,因为-vm
的路径是32位。
现在我来到这里是因为:我的客户Ony在加载我们的一个基于Eclipse / OSGI的应用程序时遇到了一些问题,Java退出了退出代码13.最后它表明问题不在于{ {1}}或Java和launcher.library
的体系结构,但他只是遗漏了-vm
,我猜eclipse.exe
并不知道要加载什么等等。在我们认识到这一点并将config.ini
放回原位后,使用eclipse.exe
和64位JRE7以及32位config.ini
加载应用就可以了。
答案 17 :(得分:1)
刚刚卸载了jre-32位版本,它对我来说很好。
答案 18 :(得分:1)
我在ubuntu上发生了这个错误,安装了32位和64位java。使用
sudo update-alternatives --config java
设置正确的版本以用作默认版本。
答案 19 :(得分:0)
我尝试了多种方法,并将-VM参数放置在建议的位置。但这行不通。终于我找到了解决方案。 -Vm args应该在执行任何插件或jar之前放置eclipse.ini文件。我在ubuntu 18.04中尝试了最新的Eclipse [Photon]。它对我来说非常有用。
-startup
-vm
/usr/local/java/jdk1.8.0_251/bin/java.exe
plugins/org.eclipse.equinox.launcher_1.5.700.v20200207-2156.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.gtk.linux.x86_64_1.1.1100.v20190907-0426
-product
org.eclipse.epp.package.jee.product
-showsplash
org.eclipse.epp.package.common
--launcher.defaultAction
openFile
--launcher.defaultAction
openFile
--launcher.appendVmargs
-vmargs
-Dosgi.requiredJavaVersion=1.8
-Dosgi.instance.area.default=@user.home/eclipse-workspace
-XX:+UseG1GC
-XX:+UseStringDeduplication
--add-modules=ALL-SYSTEM
-Dosgi.requiredJavaVersion=1.8
-Dosgi.dataAreaRequiresExplicitInit=true
-Xms256m
-Xmx2048m
--add-modules=ALL-SYSTEM
答案 20 :(得分:0)
我遇到了与sts 3.8.4相同的问题,所以我尝试了不同的设置,但没有运气, 我再次重新安装jdk n试过但同样的问题。 最后我下载了sts 3.8.2,它没有任何问题。 使用Windows 8,64位操作系统。 感谢
答案 21 :(得分:0)
我也有这个问题。我有一个旧的JDK1.8.0_05。我安装了最新的JDK1.8.0_111,现在一切都很棒。请务必更新您的环境变量。
我在Windows 7 64位上。 使用Eclipse Neon 1a。
希望能有所帮助。
答案 22 :(得分:0)
当PATH环境变量指向错误的java安装时,可能会发生这种情况。
答案 23 :(得分:0)
我想运行Eclipse Neon并拥有JRE 1.8但JDK 1.7 它返回错误= 13 然后我安装了java JDK 1.8,一切都像魅力
答案 24 :(得分:0)
1)打开 SpringToolSuite4.ini 文件。
2)在 SpringToolSuite4.ini 文件中搜索“ openFile” 文本。
3)在 SpringToolSuite4.ini
中提供 javaw.exe 文件位置
4)注意:在 -vm 和您的 javaw.exe 文件位置路径之间提供换行,如下所示。
>
openFile
-vm
C:\ Program Files \ Java \ jdk1.8.0 \ bin \ javaw.exe
-vmargs
-Dosgi.requiredJavaVersion = 1.8
-Xms256m
答案 25 :(得分:0)
我修复了重新安装jdk的问题。就我而言,有必要这样做:
java -version
sudo apt-get purge openjdk*
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer
java -version
javac -version
答案 26 :(得分:0)
在进入解决方案之前,请告诉我们为什么会显示该错误。如果您知道此问题背后的问题,我们可以轻松解决该错误。
原因1:这个问题背后最常见的原因是,我们正在尝试安装不同的位版本 - 即64位或32位版本的软件。它可能是Eclipse或Java。
<强>解决方案:强> 检查您正在运行的操作系统版本。确保您下载了相同版本的Eclipse以及相同版本的Java软件。
原因2: Eclipse.ini文件中的配置错误
<强>解决方案:强> 在Eclipse.ini文件的末尾添加以下行“ - vm然后是java sdk的路径”。例如: -vm C:\ Program Files \ Java \ jdk1.7.0_71 \ bin \ javaw.exe
原因3: Eclipse安装目录中的特殊字符(#,!,@)。
<强>解决方案:强> 确保你没有任何特殊字符。
原因4:您已在PATH系统变量中添加了两次JAVA路径,并且路径都不同。
<强>解决方案:强> 从PATH系统变量中删除一个不正确/不同的JAVA路径。
原因5:您可能使用的是最新版本的Eclipse,但您可能使用了错误的版本或不支持的Java虚拟机(JVM)版本。
<强>解决方案:强> 要通过按下win + R键并键入cmd并按Enter键来检查使用打开命令提示符的java版本。现在在那个控制台类型的Java -version命令中了解java版本。 现在研究eclipse是否支持该版本。 要么 您可以在Eclipse文件夹中打开“readme”文件夹并打开readme_eclipse.html以查看它支持的版本。
答案 27 :(得分:0)
我使用了新的 Eclipse Installer 。我不喜欢安装路径,我手动更改了它。之后,我也收到了退出代码= 13 消息。
名为 eclipse.ini
的-install
文件中有新属性。我只需要用新位置修改它,这解决了这个问题。
在新安装程序中,我选择了D:/eclipse
,但IDE已安装在D:/eclipse/eclipse
。所以,我手动移动了文件夹。下次我试图打开eclipse时出现退出错误。因此,我必须修改eclipse.ini
并设置当前位置:
-install
D:/eclipse
答案 28 :(得分:0)
为了摆脱这个烦人的错误,我做了几件事,因为修改.ini从来没有为我工作过。
双击&#34; eclipse.exe&#34;现在像魅力一样工作 使用默认工作区加载旧项目。
我怀疑它是JDK的Java VM问题而不是eclipse。
答案 29 :(得分:0)
在我的情况下,未在Env变量中设置JAVA路径。在Env PATH中设置了正确的路径后开始工作。
在命令提示符下键入javac并确保JAVA PATH正确。
答案 30 :(得分:0)
我在Ubuntu上遇到了同样的问题,并通过解压缩jdk目录中的所有* .pack文件解决了这个问题。 例如: cd /usr/java/jdk1.7.0_03/jre/lib sudo ../bin/unpack200 rt.pack rt.jar
答案 31 :(得分:0)
使用以下配置;
-startup
plugins/org.eclipse.equinox.launcher_1.3.0.v20130327-1440.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.200.v20130807-1835
-product
org.springsource.ggts.ide
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
256M
-vm
C:\Program Files\Java\jdk1.7.0_51\jre\bin\javaw.exe
-vmargs
-Dorg.eclipse.swt.browser.IEVersion=10001
-Dgrails.console.enable.interactive=false
-Dgrails.console.enable.terminal=false
-Djline.terminal=jline.UnsupportedTerminal
-Dgrails.console.class=grails.build.logging.GrailsEclipseConsole
-Dosgi.requiredJavaVersion=1.6
-Xms40m
-Xmx768m
-XX:MaxPermSize=256m
-Dorg.eclipse.swt.browser.IEVersion=10001
答案 32 :(得分:-1)
嗯,最好不要使用Eclipse 3.1.x和Java 7.我通过升级到Eclipse 3.8.x来解决这个问题。