You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Eclipse STS(4.7.2)与Java 9的源代码兼容性问题求助

解决STS(Eclipse 4.7.2)Java 9兼容性提示问题

我来帮你搞定这个问题!你的核心问题出在sts.ini的配置错误上,导致STS并没有真正以Java 9环境运行,进而触发了代码兼容性的错误提示。咱们一步步来修正:

问题分析

你的sts.ini里有几个关键错误:

  • -vm参数的位置不对:它必须放在-vmargs之前,否则STS会忽略这个配置,继续使用默认JRE
  • 重复配置了-vmargs和-Dosgi.requiredJavaVersion=1.8:后者强制要求Java 8环境,和你使用Java 9的需求冲突
  • 参数顺序混乱,导致部分配置不生效

修正后的sts.ini配置

把你的sts.ini替换成下面的内容,注意路径要和你的JDK 9安装目录一致:

-startup
plugins/org.eclipse.equinox.launcher_1.4.0.v20161219-1356.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.551.v20171108-1834
-product
org.springsource.sts.ide
--launcher.defaultAction
openFile
--launcher.appendVmargs
-vm
C:\Program Files\Java\jdk-9.0.1\bin\javaw.exe
-vmargs
-Dosgi.requiredJavaVersion=9
--add-modules=ALL-SYSTEM
-Xms40m
-Dosgi.module.lock.timeout=10
-Xverify:none
-Dorg.eclipse.swt.browser.IEVersion=10001
-Xmx768m

后续验证步骤

  1. 重启STS,然后通过Help > About Spring Tool Suite > Installation Details > Configuration,搜索java.version,确认显示的是9.0.1,这说明IDE已经在Java 9环境下运行了
  2. 再次检查项目配置:
    • 打开项目属性,确认Java Compiler里的Compiler compliance level设置为9
    • 检查Java Build Path中的JRE System Library是否指向Java 9的JDK
  3. 清理并重建项目:执行Project > Clean,选择你的项目后点击OK,让STS重新编译代码,泛型相关的兼容性提示应该就会消失了

内容的提问来源于stack exchange,提问作者D Haze

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 07:21:10