Kotlin MMP依赖发布至Maven Central时出现未知报错问题
问题背景
对构建系统完成部分调整后,尝试更新Maven Central平台上的依赖包。此前所有发布流程都可通过GitHub Actions正常运行,当前出现本地环境无法复现的未知报错。
- 运行日志可查看对应GitHub Actions任务执行记录
- 构建配置对应项目根目录下的build.gradle.kts文件
问题排查与解决方案
环境差异排查
- 首先校验GitHub Actions运行时的JDK版本、Gradle版本和本地测试环境是否完全一致,可在CI工作流文件中新增
java --version、./gradlew --version命令打印版本信息做交叉比对 - 检查CI环境中存储的Maven Central相关凭证(签名密钥、OSSRH账号密码/令牌)是否过期或被重置,本地调试时通常调用的是本地缓存的有效凭证,很容易忽略CI侧凭证的有效期问题
构建配置校验
- 核对调整后的构建配置中
maven-publish、signing插件的配置段是否存在疏漏:Maven Central对上传构件的pom文件有强制要求,必须包含name、description、url、license、developer、scm完整信息,任意项缺失都会触发中央仓库的校验报错,本地环境如果没有开启严格校验就不会复现该问题 - 检查Gradle包装器配置(gradle-wrapper.properties)的分发源是否可在CI网络环境下正常访问,部分CI环境存在公网访问限制,会导致Gradle依赖拉取异常,出现本地可运行但CI失败的情况
缓存冲突排查
- 临时在CI配置中禁用Gradle构建缓存,执行一次全新的构建发布测试,排除CI侧残留的旧构建缓存和新配置冲突引发的异常
内容的提问来源于stack exchange,提问作者Jan T.
相关产品推荐
相关产品推荐

