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

Android库嵌套子模块发布到Jitpack后无法查看源码问题咨询

问题原因
  • Jitpack 默认仅扫描项目根目录下直接存放的独立模块,嵌套在子目录内的模块不会被自动识别,也就不会自动触发sources.jar的生成逻辑
  • 通常这类问题是因为仅给根目录的Core模块单独配置了sourceJar生成任务,嵌套子模块的build.gradle没有继承或配置对应的源码打包任务
修复步骤

1. 统一配置所有模块的sourceJar任务

在项目根目录的build.gradle(项目级,非模块级)里添加全局子模块配置,确保所有Android Library模块都会生成sources.jar:

subprojects {
    afterEvaluate { project ->
        if (project.plugins.hasPlugin("com.android.library")) {
            task sourcesJar(type: Jar) {
                from android.sourceSets.main.java.srcDirs
                classifier = 'sources'
            }
            artifacts {
                archives sourcesJar
            }
        }
    }
}

2. 明确声明Jitpack要构建的嵌套模块

在项目根目录新建jitpack.yml文件,手动指定所有需要构建的模块路径,避免Jitpack漏扫嵌套模块:

install:
  - ./gradlew :Core:publishToMavenLocal
  - ./gradlew :data:Networking:publishToMavenLocal
  - ./gradlew :data:Room:publishToMavenLocal
  - ./gradlew :customViews:CustomView1:publishToMavenLocal

模块路径的冒号对应目录层级,嵌套在data目录下的Networking模块路径即为:data:Networking,后续新增嵌套模块只要在该文件中追加对应构建命令即可。

3. 校验settings.gradle配置

确保你项目根目录的settings.gradle里已经正确引入了所有嵌套模块,示例配置:

include ':Core'
include ':data:Networking'
include ':data:Room'
include ':customViews:CustomView1'

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 00:24:04