我知道有很多关于这个的话题,但是都没有关于Spring Tools Suite的话题。而且我正在发现该文件在较新的Java版本中不再存在的信息,这似乎是事实,因为我找不到它。 我现在绝对迷路了。
答案 0 :(得分:22)
在 SpringToolSuite4.ini 文件中将 -vm 自变量放在上 -vmargs
-startup
plugins/org.eclipse.equinox.launcher_1.5.600.v20191014-2022.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.1100.v20190907-0426
-product
org.springframework.boot.ide.branding.sts4
--launcher.defaultAction
openFile
-vm
C:\Program Files\Java\jdk1.8.0_181\bin\javaw.exe
-vmargs
-Dosgi.requiredJavaVersion=1.8
-Xms256m
-Xmx1024m
-XX:+UseG1GC
-XX:+UseStringDeduplication
--add-modules=ALL-SYSTEM
答案 1 :(得分:5)
我通过将JDK添加到系统环境变量中的Path并将其移至列表的顶部/第一位来解决此问题。以前在PATH中的Java唯一路径是C:\ Program Files(x86)\ Common Files \ Oracle \ Java \ javapath。我需要在路径中添加C:\ Program Files \ Java \ jdk1.8.0_211 \ bin并将其移到顶部。
对于Windows:
答案 2 :(得分:4)
我可以通过修复PATH来解决。 我在Windows上安装了一个jre和一个jdk.JAVA_HOME已正确设置为jdk,但是jre是路径中的第一个。我通过在jre之前移动jdk来固定路径,然后问题消失了。
如何检查:
打开Windows cmd窗口。然后执行where java
。您会看到类似这样的内容:
C:\Users\d058029>where java
C:\Program Files (x86)\Common Files\Oracle\Java\javapath\java.exe
C:\Program Files\Standalone\jdk1.8.0_172\bin\java.exe
您在这里看到。 jre是第一位。使用Windows控制面板->编辑系统环境变量,并确保jdk在jre之前。
答案 3 :(得分:3)
我只需按照以下简单步骤即可解决此问题:
转到Eclipse IDE的以下选项:
Window --> Preferences --> Java --> Execution Environments
选择适当的Java版本jdk。
保存并重新启动Eclipse,不会出现错误。
execution_environment_java_option:
答案 4 :(得分:0)
我遇到了图片之类的问题
我将jdk1.8中的tools.jar复制到图片中提到的jre
C:\Program Files\Java\jdk1.8.0_191\lib\tools.jar
to
C:\Program Files\Java\jre1.8.0_211\lib
然后对我很好,错误消失了 注意我用 -JDK1.8.0_191 -jre1.8.0_211 而且我认为这对您来说很好
答案 5 :(得分:0)
您需要使用JDK而不是JRE。
JDK具有tools.jar,
如果要使用JRE,可以下载JDK并将所需的Jar添加到类路径中。
答案 6 :(得分:0)
无论我将JRE更改为JDK多少次,更新了路径和系统变量,最终我的问题都通过添加 -vm 参数和绝对路径< / strong>到JDK中的 SpringToolSuite4.ini 文件。我在Eclipse Photon上也有相同的行为,它也解决了这个问题。
-vm
C:\Program Files\Java\jdk1.8.0_181\bin\javaw.exe
您可以在this Eclipse wiki上阅读更多内容。
答案 7 :(得分:0)
我遇到了同样的问题,为我解决的唯一问题是安装了JDK的最新更新。
我有一个Windows更新,可能安装了Java更新。显然,Eclipse使用的是最近安装的Java(它是从Windows / System32获取的-参见here)。自动安装的JRE解决问题后,手动安装JDK更新。
答案 8 :(得分:0)
通过将Installed JRE和Compiler首选项设置为Java 11,尝试在Spring Boot项目中使用Java 11之后开始看到此错误。
在我的情况下,在eclipse.ini或SpringToolSuite4.ini中添加-vm参数没有帮助。不得不切换Windows Path环境变量上的JDK来克服此错误(路径先前已插入Java 8)。还在.ini文件上设置了-Dosgi.requiredJavaVersion = 11。
答案 9 :(得分:0)
我将以下vm参数添加到eclipse.ini文件中,并解决了我的问题。
-虚拟机 C:\ Program Files \ Java \ jdk1.8.0_40 \ bin
答案 10 :(得分:0)
您必须在系统中安装jdk,并将其放在SpringToolSuit.ini文件中-vmargs的下面
-vm
C:\Program Files\Java\jdk1.8.0_221\bin\javaw.exe
答案 11 :(得分:0)
就我而言,手动设置JAVA_HOME和路径后,无法解决问题。 在Eclipse中看到了我,右键单击Project-> Properties-> Java Build Path-> Libraries-> Java 11(未绑定),报错。只需编辑它并指向可用版本(我的版本是JDK 8),即可解决问题。
答案 12 :(得分:0)
请在 java path
文件中的 clean
上方提供 vmargs
和 SpringToolSuite4.ini
。
-clean
-vm
C:\Program Files\Java\jdk1.8.0_271\bin\javaw.exe
SpringToolSuite4.ini
-startup
plugins/org.eclipse.equinox.launcher_1.5.700.v20200207-2156.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.1200.v20200508-1552
-product
org.springframework.boot.ide.branding.sts4
--launcher.defaultAction
openFile
-clean
-vm
C:\Program Files\Java\jdk1.8.0_271\bin\javaw.exe
-vmargs
-Dosgi.requiredJavaVersion=1.8
-Dosgi.dataAreaRequiresExplicitInit=true
-Xms256m
-Xmx2048m
--add-modules=ALL-SYSTEM
答案 13 :(得分:-1)
我这样修复:
user@mynode:~$ echo $JAVA_HOME/lib
/usr/lib/jvm/java-8-oracle/lib
user@mynode:~$ sudo ln -s $JAVA_HOME/lib /usr/lib/jvm/java-ibm-x86_64-80/lib
答案 14 :(得分:-3)
将jdk升级到相同版本的JRE