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

JitPack构建Maven库报invalid target release编译错误如何解决

问题根因
  • 你当前引入的maven-compiler-plugin版本为3.2,该版本发布时间较早,最高仅支持Java 8作为编译目标,无法识别Java 9及以上版本的编译参数,是触发该报错的核心原因。
  • JitPack云端构建环境默认使用OpenJDK 8作为运行环境,未显式指定JDK版本时,构建环境不会预装高版本JDK,和你本地IDE预装了对应JDK的环境不一致,因此本地可以正常构建,云端构建失败。
  • 若你调整编译版本到Java 7/8后依然报相同错误,大概率是修改后的pom.xml未提交到Git远程仓库对应tag的提交点,或是JitPack缓存了旧的构建结果。
修复方案

按以下步骤操作即可解决:

  1. 升级maven编译插件版本
    将pom.xml中原有maven-compiler-plugin的配置替换为如下内容,插件版本推荐使用3.11.0稳定版(支持Java 8~21所有版本),使用release参数替代旧的source/target配置避免交叉编译问题:
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.11.0</version>
    <configuration> 
        <release>14</release> <!-- 填写项目实际使用的Java版本,如使用Java 17则改为17,如需兼容Java 8运行则改为8 -->
    </configuration>
</plugin>

注意:你引入的mysql:mysql-connector-java:8.0.29依赖最低要求Java 8运行,编译版本不能低于8。

  1. 指定JitPack构建JDK版本
    在项目根目录下新建名为jitpack.yml的配置文件,写入和上述编译版本匹配的JDK配置,例如使用Java 14时配置如下:
jdk:
  - openjdk14

若使用Java 17则将值改为openjdk17即可,JitPack原生支持OpenJDK 8到21的所有正式版本。

  1. 重新触发构建
  • 将pom.xml和jitpack.yml的修改提交到Git远程仓库,打新的版本tag
  • 进入JitPack对应项目页面,找到之前构建失败的版本,点击清除构建缓存,再触发新一次构建即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.29 22:42:15