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