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

如何使用shadowJar Gradle插件向JitPack发布Fat JAR(无需Maven Publish)

如何在JitPack上发布Shadow生成的Fat JAR

发布Fat JAR到JitPack确实有点反直觉——Shadow插件的文档没提JitPack适配,JitPack的文档也完全没覆盖Fat JAR的场景,踩坑太正常了。

核心问题是:JitPack默认会执行publishToMavenLocal任务来处理项目发布,但这个任务默认用的是普通构建出的JAR,而我们需要的是Shadow生成的Fat JAR;但JitPack的构建命令是不可自定义的,所以只能通过修改publishToMavenLocal的配置,让它关联Shadow的产物。

接下来直接上解决方案:

你只需要在Gradle构建脚本中做以下配置,确保发布任务使用Shadow生成的Fat JAR:

Groovy 版本配置

plugins {
    id 'java'
    id 'com.github.johnrengelman.shadow' version '7.1.2' // 请替换为最新稳定版本
    id 'maven-publish'
}

// *关键配置*:让Maven发布任务指向shadowJar的输出
publishing {
    publications {
        mavenJava(MavenPublication) {
            artifact shadowJar // 指定用shadowJar生成的Fat JAR作为发布产物
        }
    }
}

Kotlin DSL 版本配置

plugins {
    java
    id("com.github.johnrengelman.shadow") version "7.1.2"
    `maven-publish`
}

publishing {
    publications {
        create<MavenPublication>("mavenJava") {
            artifact(tasks.shadowJar)
        }
    }
}

配置完成后,JitPack在执行publishToMavenLocal时,Gradle会自动触发shadowJar任务生成Fat JAR,然后将这个Fat JAR作为发布产物处理,完全不需要你手动调整JitPack的构建命令。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.22 08:33:47