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

Gradle bootJar任务报Unsupported class file major version 61如何解决

报错根因

Unsupported class file major version 61 是字节码版本不匹配错误,版本号61对应Java 17,触发该报错的核心原因有两个:

  • 执行Gradle构建的守护进程运行环境不是Java 17,你配置的sourceCompatibility/targetCompatibility、IDEA项目SDK仅控制项目代码的编译目标版本,不会决定Gradle进程本身的运行JDK
  • 项目引入的Spring Boot Gradle插件版本过低,低版本插件无法解析Java 17编译生成的字节码,因此在读取mainClassName属性时直接抛出异常
修复步骤
  • 校准Gradle运行时JDK
    打开IDEA设置中Build, Execution, Deployment > Build Tools > Gradle页面,找到Gradle JVM配置项,手动明确指定本地安装的JDK 17路径,不要使用默认的项目SDK选项。配置完成后执行./gradlew --stop终止所有旧的Gradle守护进程,确保下次构建使用新配置的JDK启动。
    如果使用命令行构建,直接检查系统JAVA_HOME环境变量是否指向JDK 17安装目录,执行java -version确认输出版本为17即可。
  • 升级Spring Boot Gradle插件版本
    Gradle 7.4本身已支持Java 17,但Spring Boot 2.5.5以下版本的Gradle插件不兼容Java 17字节码,你可以将插件升级到2.7.x稳定版(如果要升级到Spring Boot 3.x系列,需要同步把Gradle wrapper升级到7.5及以上版本),根目录build.gradle的插件配置参考:
    plugins {
        id 'org.springframework.boot' version '2.7.18'
        id 'io.spring.dependency-management' version '1.0.15.RELEASE'
        id 'java'
    }
    
  • 清理缓存后重新构建
    执行以下命令清理旧构建产物和依赖缓存:
    ./gradlew clean
    ./gradlew bootJar
    

构建前可以执行./gradlew -version确认输出的JVM信息为17版本,避免配置不生效。

内容的提问来源于stack exchange,提问作者Iulii Turkin

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.27 19:18:46