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

Spring Boot+Maven构建Jar包失败:release版本17不支持

解决Maven编译报错:release version 17 not supported

错误根源

  • 本地Maven调用的JDK版本低于项目指定的Java 17/21
  • 手动指定的Maven Compiler插件版本(3.12.1)太老,不支持高版本Java
  • pom.xml里的compiler插件配置存在拼写错误(大写的<Relase>应为小写<release>)

修复步骤

1. 修正配置拼写错误

找到pom.xml中maven-compiler-plugin的configuration块,把<Relase>改成<release>:

<configuration>
    <release>17</release>
    <target>17</target>
</configuration>

2. 让Spring Boot管理Compiler插件版本(推荐)

Spring Boot的parent pom已经内置了适配的插件版本,手动指定的3.12.1版本不兼容Java17+。直接删掉插件里的<version>3.12.1</version>这一行即可:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <!-- 删除这行:<version>3.12.1</version> -->
    <configuration>
        <release>17</release>
        <target>17</target>
    </configuration>
</plugin>

3. 确保本地JDK版本匹配

  • 打开终端执行java -version,确认输出的版本是17或21
  • 如果版本不对,安装对应版本的JDK,然后配置Maven使用它:
    • Linux/Mac:在项目根目录创建.mavenrc文件,写入export JAVA_HOME=/你的JDK17安装路径
    • Windows:创建maven.bat,写入set JAVA_HOME=你的JDK17安装路径
    • 或者在IDE里直接把项目JDK和Maven Runner的JDK都改成17/21

4. 简化Java版本配置(可选)

Spring Boot的java.version属性会自动同步编译相关的三个参数,所以可以只保留这一个属性,删掉其他冗余配置:

<properties>
    <java.version>17</java.version>
</properties>

验证修复

重新执行mvn clean package,正常情况下就能完成Jar包构建了。

内容的提问来源于stack exchange,提问作者Juan David Polo

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 05:40:36