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

Jenkins构建Java17项目报错:invalid target release:17求解决方案

解决Jenkins构建时Maven编译报错"invalid target release: 17"的办法

以下是针对该问题的可行解决步骤:

  • 检查Jenkins全局JDK配置
    进入Jenkins的「管理 Jenkins」→「全局工具配置」,找到JDK配置区域:

    • 确认已添加JDK 17的配置,且安装路径指向正确的JDK 17目录;
    • 若未添加,点击「新增JDK」,取消勾选「自动安装」(如需手动指定),填入JDK名称和对应安装路径,保存配置。
  • 指定Jenkins项目的JDK版本
    进入目标项目的「配置」页面:

    • 在「构建环境」或「Maven构建」相关配置中,找到JDK选择项,选择已配置好的JDK 17,而非默认的JDK版本;
    • 保存项目配置后重新构建。
  • 验证Jenkins服务器的系统环境变量
    登录Jenkins所在服务器:

    • 检查JAVA_HOME环境变量是否指向JDK 17的安装目录;
    • 检查PATH变量中是否优先包含JDK 17的bin目录;
    • 若修改了环境变量,重启Jenkins服务使其生效。
  • 优化Maven编译器插件配置
    替换现有maven-compiler-plugin的配置,使用release参数(需插件版本≥3.6.0),确保编译版本与JDK版本一致:

    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-compiler-plugin</artifactId>
      <version>${maven-compiler-plugin.version}</version>
      <configuration>
        <release>17</release>
      </configuration>
    </plugin>
    

    同时确保项目根properties中的java.version为17,保持配置一致性。

  • 检查Maven settings.xml的全局配置
    查看Jenkins使用的Maven配置文件(全局settings.xml或项目自定义settings.xml):

    • 确认文件中不存在覆盖编译版本的全局参数,例如-Dmaven.compiler.source=8或-Dmaven.compiler.target=8;
    • 若存在此类参数,删除或修改为17后重新构建。
  • 验证构建环境的JDK版本
    在Jenkins项目的构建步骤中添加一个前置执行步骤,运行以下命令:

    java -version
    mvn --version
    

    查看构建日志中的输出,确认当前构建环境使用的Java版本为17,以此排查环境配置是否生效。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 17:55:16