STS 启动错误 - Java 已启动但返回退出代码 = 13
Posted
技术标签:
【中文标题】STS 启动错误 - Java 已启动但返回退出代码 = 13【英文标题】:STS launch error - Java was started but returned exit code=13 【发布时间】:2015-05-21 11:24:51 【问题描述】:所以我不久前将 STS 安装到我的 Windows 7 64 位机器上,每次尝试运行 STS 时,我都会收到下面附加的 Java 退出代码 = 13 错误。
我没有在我的机器上安装 Eclipse,我提到这一点是因为每次我尝试用谷歌搜索这个错误代码时,都会出现关于 Eclipse 上发生的相同问题的线程。
我还尝试检查我的机器上是否安装了 Java。
有谁知道如何解决这个问题?
【问题讨论】:
“我没有安装 eclipse”:STS 是基于 eclipse 的,所以实际上,你可以安装。看看这个:***.com/questions/11461607/… 正确!刚刚在我的机器上进行了搜索,发现它确实在那里并安装了! :-) @Stultuske Sabz Mbatha:STS 是 Eclipse,只是默认安装了一些其他的配色方案和一些插件,他们添加了一些自己的功能/插件,但核心仍然是 Eclipse。所以,一旦你有了 STS,你就有了 eclipse。 【参考方案1】:首先你需要检查你使用的是64 bit
java。
接下来,您需要在 STS.ini
文件中指向该版本的 java。
您可以通过在STS.ini
文件中指定-vm
选项来执行此操作。 -vm
选项必须放在其他 Eclipse 特定选项(例如 -product、--launcher.* 等)之后,但在 -vmargs 选项之前。
-vm
参数可能如下所示:
-vm
C:\jdk1.7.0_21\bin\javaw.exe
或
-vm C:\jdk1.7.0_21\bin\javaw.exe
或
-vm C:\jdk1.7.0_21\jre\bin\java.exe
如果遇到Java was started but returned exit code=1
将`-vm 选项指向jvm.dll
-vm
C:\Development\Java\64bit\jdk1.7.0_09\jre\bin\server\jvm.dll
这是我在STS.ini
文件中添加它的方式。
-startup
plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.300.v20150602-1417
-product
org.springsource.sts.ide
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
256M
-vm
C:\Program Files\IBM\Java71\jre\bin\java.exe
-vmargs
-Dosgi.requiredJavaVersion=1.7
-Xms40m
-XX:MaxPermSize=256m
-Xverify:none
-Dorg.eclipse.swt.browser.IEVersion=10001
-Xmx1200m
参考资料:
Eclipse Wiki page
堆栈溢出answer by DNA 到类似问题
【讨论】:
注意我必须将格式更改为 C:\Progra~1\Java\jdk1.8.0_131\bin\javaw.exe 才能正常工作。 *注意它是 Progra~1 而不是 Program Files。换句话说,没有空格。除了我将 -vm 和路径保持在同一行之外,我还将它放在文件中与 Manoj 相同的位置。 我遇到了同样的错误“Java 退出代码 = 13”,并且我添加了“-vm C:\InstalledSoftwares\Jdk_1.8\bin”而且它工作正常,但是,这样做每次打开IDE都打开cmd提示符,有什么办法可以避免这种情况。 请注意,如果您遇到 STS4 问题,文件名是 SpringToolSuite4.ini 而不是 STI.ini【参考方案2】:由于我的 java 更新,我遇到了这个问题。 所以下面是原因
-
或者java 64位和eclipse 32位版本
你有 java 32 位版本和 eclipse 64 位版本
外部原因,如果您安装了两个版本的 java(32 位和 64 位),如果一个已更新意味着您的路径变量指向
java 会改变。
解决方案:- 使用以下命令检查您的 java 版本是 32 位还是 64 位
java -d64 -version
如果是 64 位会显示
java version "1.8.0_181"
Java(TM) SE Runtime Environment (build 1.8.0_181-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)
如果不是
它会显示类似这样的东西
Error: This Java instance does not support a 64-bit JVM.
Please install the desired version.
根据 java 版本将您的 STS 更改为 32 位或 64 位。
【讨论】:
【参考方案3】:检查您使用的操作系统架构的 Java 版本是否正确,32 位或 64 位
【讨论】:
您好 Fran,非常感谢您 - 您的检查确实有效! :-) 所以我重新安装了正确的 Java 64 位版本,我可以在第一次运行时打开应用程序。谢谢你 - 非常感谢! ;-) @SabzMbatha 太棒了!你能接受我的回答有效吗? :D 是的@FranMontero,您的回答确实被接受为有效! ;-)【参考方案4】:如果您是第一次使用,STS 通常会以错误代码 13 结束。这是解决问题的方法。请访问我在这里找到的链接https://youtu.be/cMClVM6rzuc。
这里是解决方案的摘要 - 启动 STS 时的错误主要是因为您从 spring.io 网站下载了 32 位 STS 包。您需要检查您的系统架构并下载适当的版本。您可以观看视频了解详细信息。我 100% 确定您会找到解决方案
【讨论】:
好像默认下载是32位的,下载64位版本解决了这个问题。【参考方案5】:如果您下载了 64 位版本的 STS Spring, 通过输入 cmd 检查您拥有的 java 版本:
java -d64 -version
如果您没有 jre 64 位,请安装它,它会工作。
【讨论】:
非常感谢这一帮助确定问题。不知何故,当我执行 $java -version 时,它显示为 64 位,但使用 java -d64 -version 它显示错误。我还是不明白怎么可能。【参考方案6】:我从PATH
环境变量中删除了C:\ProgramData\Oracle\Java\javapath
。那时它对我有用。所以基本上这是一个路径变量问题。
【讨论】:
【参考方案7】:请确保从https://spring.io/tools/sts/all下载64位版本。
【讨论】:
【参考方案8】:在 STS 页面上,下载 STS 按钮默认下载适用于 32 位 Windows 的版本。在下载按钮下,点击查看所有版本 (https://spring.io/tools/sts/all)。从那里您可以单击菜单按钮并选择 64 位 Windows 版本。
【讨论】:
没错,这对我来说是个问题。下载64位版本后没有问题。【参考方案9】:只需安装 32 位 JRE(如果您已经安装了 64 位)并将 -vm 指向这个 32 位 JRE,如上所述。
【讨论】:
【参考方案10】:所以基本上当您访问 Spring 网站时,它不了解您的客户端操作系统并提示您下载 32 位版本。我遇到了同样的问题,并且必须通过单击“查看所有版本”来明确下载 64 位版本。也有人建议从 Path 中删除“C:\ProgramData\Oracle\Java\javapath”条目,但如果您实际下载了 JDK 1.8,这是正确的,但这无助于解决此处的具体问题。
【讨论】:
【参考方案11】:打开“SpringToolSuite4.ini”或 sts.ini 并确保 .ini 文件中有 javaw.exe 路径。
-vm
D:\Projects\Softwares\JDK\bin\javaw.exe
文件应如下所示。
-startup
plugins/org.eclipse.equinox.launcher_1.5.400.v20190515-0925.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.1000.v20190125-2016
-product
org.springframework.boot.ide.branding.sts4
--launcher.defaultAction
openFile
-vm
D:\Projects\Softwares\JDK\bin\javaw.exe
-vmargs
-Dosgi.requiredJavaVersion=1.8
-Xms256m
-Xmx1024m
-XX:+UseG1GC
-XX:+UseStringDeduplication
--add-modules=ALL-SYSTEM
【讨论】:
【参考方案12】:您可能从 spring.io 网站安装了默认版本的 STS,通常是 32 位版本。
点击查看所有版本并从下一页下载windows 64位版本。
祝你好运。
【讨论】:
【参考方案13】:通过从环境变量路径中删除以下 java 路径来解决问题。
C:\Program Files (x86)\Common Files\Oracle\Java\javapath
路径中有另一个 jdk。
【讨论】:
【参考方案14】:最初我卸载了另一个 Java SE Development Kit ,接下来我在 *SpringToolSuite4.ini 中添加了以下路径: *(取决于您安装的 IDE)
-vm
C:\Program Files\Java\jdk1.8.0_131\bin\java.exe**
【讨论】:
【参考方案15】:您只需要重新安装 JDK(相同或最新版本)和STS(并非总是需要)。
【讨论】:
【参考方案16】:首先,请检查您的 STS 路径。如果您的路径中有任何特殊字符,例如 # 等,请删除。验证后,请选择上述任何解决方案;)
【讨论】:
【参考方案17】:第一步和上面已经相关:打开配置“STS”的文档参数,将下面的命令发送到“openFile”:
-vm
C:\Program Files\Java\jdk-11.0.2\bin\javaw.exe
要检查 JDK 的版本,请在提示符下执行以下命令:
java -version
你会在“build”中找到。
如果你仍然没有找到JDK路径的问题,在电脑上找到你的JDK的路径是:
我的电脑 -> 档案和程序 -> java -> jdk -> bin -> javaw
当你到达这里时,单击并检查属性并复制路由以在 -vm 之后放置命令。
【讨论】:
以上是关于STS 启动错误 - Java 已启动但返回退出代码 = 13的主要内容,如果未能解决你的问题,请参考以下文章
无法启动 Eclipse - Java 已启动但返回退出代码 = 13