maven-central-publish

📦 标准化 Maven Central 发布工作流

🥥34总安装量 11评分人数 9
100% 的用户推荐

基于 Central Portal 的 Java 库发布指南,提供标准化 Maven 配置,简化 GPG 签名与部署。

A

基本安全,请在特定环境下使用

  • 来自社区或个人来源,建议先隔离验证
  • ✅ 纯文档型资产,无可执行脚本,无 eval/exec/system 等危险函数调用
  • ✅ 配置模板使用占位符(如 USER_TOKEN_USERNAME),无硬编码敏感信息,无静默数据收集行为
  • ✅ 依赖插件均来自官方可信源(Apache/Sonatype),版本明确锁定,无动态代码加载
  • ⚠️ 来源为个人开发者账号(T3),建议用户自行审查配置内容是否符合安全要求
  • ⚠️ 需用户手动配置 Central Portal Token 及 GPG 密码等敏感凭证,存在配置错误导致泄露的风险

使用说明

该 Skill 提供了一套完整的 Java/Kotlin 库发布到 Maven Central 的标准化工作流,基于 Sonatype 最新的 Central Portal 机制。核心用法包括:首先完成前置条件准备,包括注册 Central Portal 账号、验证命名空间(groupId)以及生成用户令牌;其次配置本地环境,安装 Maven、GPG 和 JDK 17+,并设置 Loopback Pinentry 模式以实现无头环境的自动签名;接着配置 Maven 的 settings.xml 文件,填入 Central Portal 的用户令牌;最后在项目的 pom.xml 中配置必需的插件(source、javadoc、gpg、central-publishing),执行 mvn clean deploy -P release 即可完成发布。

显著优点包括:采用最新的 Central Portal 发布机制,替代即将淘汰的 OSSRH,符合官方最新标准;提供了经过验证的 pom.xml 插件配置模板,包含 Source、Javadoc、GPG 签名和 Central Publishing 插件的最佳实践;针对常见的 401 认证失败、GPG 签名错误、Javadoc 生成失败等问题提供了明确的解决方案;明确建议使用用户令牌而非主账号密码,采用 Loopback Pinentry 避免交互式输入,适合 CI/CD 环境。

潜在缺点与局限性:维护者为个人账号(T3 来源),虽经安全审查无恶意代码,但缺乏企业级维护保障;该 Skill 仅为配置指南和模板,不包含自动化脚本或工具,所有操作仍需用户手动执行;涉及 GPG 密钥管理、Maven 多环境配置、Portal 命名空间验证等多个环节,对新手仍有学习曲线;仅支持新版 Central Portal,不兼容仍在使用旧版 OSSRH 的遗留项目。

适合的目标群体包括:需要将 Java/Kotlin 开源库发布到 Maven Central 的开发者;首次接触 Maven Central 发布流程,需要详细配置指引的新手;希望从旧版 OSSRH 迁移到新版 Central Portal 的维护者;寻求标准化、可复用的 Maven 发布配置模板的团队。

使用该技能可能存在的常规风险:用户需在 settings.xml 中配置 Central Portal Token 和 GPG 密码,若误提交到版本控制或共享环境,可能导致仓库被恶意上传;Loopback Pinentry 配置不当可能导致签名失败或安全风险,特别是在多用户服务器环境;配置中 autoPublish 参数若设为 true,将跳过人工审核直接发布,一旦上传恶意或错误版本无法撤回;发布过程中网络中断可能导致半完成状态,需手动在 Portal 界面处理。

maven-central-publish 内容

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