运行./gradlew genSources失败:提示Java版本过低但已配置JDK17
解决Fabric模组genSources时Java版本检测异常问题
检查当前终端会话的环境变量
打开新的PowerShell窗口,运行以下命令查看实际生效的环境变量:echo $env:JAVA_HOME echo $env:PATH确认输出路径指向JDK17,若仍显示JDK8,说明环境变量修改未在当前会话生效,需重启终端。
重启终端或IDE
修改Windows环境变量后,现有终端/IDE不会自动加载新配置,必须关闭并重新打开,确保新会话读取最新的JAVA_HOME和PATH。核对系统与用户环境变量优先级
打开「控制面板→系统→高级系统设置→环境变量」,分别检查系统变量和用户变量中的JAVA_HOME:- 若系统变量里的JAVA_HOME仍指向JDK8,将其修改为JDK17的安装路径(如
C:\Program Files\Java\jdk-17.0.1) - 确保PATH中JDK17的
bin目录排在JDK8之前,避免优先调用旧版本Java
- 若系统变量里的JAVA_HOME仍指向JDK8,将其修改为JDK17的安装路径(如
检查项目Gradle配置
查看项目根目录下的gradle.properties文件,若存在org.gradle.java.home配置,确认其指向JDK17:org.gradle.java.home=C:\\Program Files\\Java\\jdk-17.0.1若该配置指向JDK8,修改后保存。
验证IDE的JDK配置(若使用IDE运行命令)
以IntelliJ为例:- 打开「File→Project Structure→Project」,将Project SDK设置为JDK17
- 打开「File→Settings→Build, Execution, Deployment→Build Tools→Gradle」,将Gradle JVM设置为JDK17
确认Java版本生效
在新终端中运行以下命令,输出应为17.x.x版本:java -version javac -version
内容的提问来源于stack exchange,提问作者Voxel
相关产品推荐
相关产品推荐

