最近给框架发版时总卡在 Maven Central 发布那一步:一次要推送 90 多个工件、加起来超过 300MB ,之前一直用的插件走 OSSRH 路径,在这个体积下反复超时,要么手动补发、要么整段重来,非常折腾。
按照 Maven Central 官方的 Publisher API 文档,我用 Java 实现了一个 Gradle 发布插件,把正式版收敛成 staging → bundle → 上传 Portal → 轮询部署状态一条命令;又补上了 SNAPSHOT 直接发布,根项目版本号带 -SNAPSHOT 后缀就自动切快照仓库,不用再在两个工具间来回切。
两个自认为对多模块项目有用的取舍:
- 根项目聚合发布:一次扫描所有子项目,把它们的 publication 合并进同一次部署,避免同一版本拆成多个部署互相打架;
- 凭据不在配置阶段求值:默认按
mavenCentral身份在任务执行时解析,配置缓存只保存身份;--dry-run不需要凭据。
如果你也有多模块发布的需求,欢迎试用,有问题可以提 Issue 。
当前版本是 v1.0.1 ,插件不依赖我的框架。源码包、Javadoc 、POM 元数据和签名需要在项目中自行配置,完整用法见仓库 README 。