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的主要内容,如果未能解决你的问题,请参考以下文章

MoSync:Java 已启动但返回退出代码 13

java 已启动但返回退出代码 = -805306369

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

Java已启动但​​返回退出代码= 13 [重复]

Eclipse 给出“Java 已启动但返回退出代码 13”[重复]

Java已启动但​​返回退出代码13 [重复]