maven-central-publish

📦 Java 构件发布 Central Portal 标准指南

一站式 Maven Central 发布指南,涵盖 Central Portal 认证、GPG 签名配置与自动化部署,助 Java/Kotlin 开发者快速合规发布构件。

收藏
6k
安装
1.3k
版本
1.0.0
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心功能与用法

本技能提供完整的 Maven Central 现代化发布工作流,基于 Sonatype 2024 年启用的 Central Portal 体系,替代传统的 OSSRH 流程。核心流程包括:

1. 前置准备:注册 Central Portal 账户 → 验证 groupId 命名空间 → 生成 User Token
2. 环境配置:安装 Maven、GnuPG、OpenJDK 17+;配置 Loopback Pinentry 实现无头环境自动签名

3. 凭证管理:在 ~/.m2/settings.xml 中配置 central 服务器凭证与 GPG 密钥密码

4. 项目合规化:pom.xml 需包含完整元数据(name, description, url, licenses, developers, scm),并集成四大必需插件:

  • maven-source-plugin(源码附件)
  • maven-javadoc-plugin(文档附件,建议关闭严格 HTML 校验)
  • maven-gpg-plugin(GPG 签名,启用 loopback 模式)
  • central-publishing-maven-plugin(新版发布核心,支持 autoPublish 开关)

5. 执行发布:mvn clean deploy -P release,成功后可在 Portal 后台审核或直接自动发布

显著优点

  • 官方现代工作流:直接对接 Sonatype Central Portal,跳过旧版 OSSRH 的繁琐 staging 流程
  • 自动化友好:Loopback Pinentry 配置使 CI/CD 场景无需人工干预输入 GPG 密码
  • 合规性保障:明确列出 Maven Central 质量要求 的检查清单,降低审核驳回风险
  • 故障速查表:覆盖 401 认证失败、GPG 签名错误、Javadoc 严格校验、坐标不匹配等高频问题

局限性与风险

  • 命名空间门槛:必须拥有经 DNS 验证或 GitHub 账户关联的 groupId,个人开发者首次 setup 周期较长
  • GPG 密钥管理:私钥与密码需妥善保管,泄露可能导致构件被恶意签名发布
  • 不可逆发布:一旦点击 Publish,构件永久进入 Maven Central 仓库,无法删除或修改
  • 版本锁定:Central Portal 对插件版本有兼容性要求,需持续关注 central-publishing-maven-plugin 更新

适合人群

Java/Kotlin 开源库维护者、企业级 SDK 发布团队、追求构件供应链合规性的 DevOps 工程师。

常规风险提示

请在 autoPublish=false 模式下首次验证发布流程,确认构件内容无误后再启用自动发布;建议结合 CI 密钥管理(如 GitHub Secrets)而非硬编码密码到 settings.xml。

maven-central-publish 内容

templates文件夹
手动下载zip · 4.8 kB
pom-plugins.xmltext/plain
请选择文件