6

我想需要一些通行证才能将工件提交到 Maven 中央存储库。

我想详细了解有什么要求,要遵循的程序是什么,以及在此过程中是否有教程或指南可以提供帮助。

我听说您还需要对工件进行数字签名(gpg),有关此的一些详细信息也将受到欢迎。

4

2 回答 2

4

如果您的代码是 OSS,则有一个通过 Sonatype 发布的“快速通道”流程。

简短的回答:

请参阅Sonatype OSS Maven 存储库使用指南

长答案:

基本上,这是我不久前为beanstalk-maven-plugin所做的:

  1. 我已经在 HKP Keyservers 中为我的电子邮件生成并注册了一个新的 GPG 密钥(很简单)。确保你有你的密钥备份(实际上,我建议你在一个完全独立的机器上创建你的密钥,这样你就可以知道你的备份/导出程序正在运行)

  2. 在 Sonatype OSS 项目 Jira Tracker 中打开了一个指向 groupId、源 SCM url 和其他详细信息的问题。批准大约需要 48 小时。

  3. 将my 配置pom.xml为使用 sonatype-parent pom 作为父级。这增加了许多额外的信息和验证。

  4. 为标记/发布设置 SCM。

  5. 设置 jenkins,这样我的-SNAPSHOT版本也将发布到 oss.sonatype.org。

现在,通过 Sonatype 的发布过程本身非常简单:

  • 调用release:preparerelease:perform进入OSS Staging。您的新版本将进入 Sonatype Staging
  • 登录 OSS Staging,然后“关闭”Staging Repository - 如果有任何验证错误(例如没有源的工件),它会发出警告,并且您可能会发出“Drop”。
  • 如果一切顺利,您可以改为调用“Release”,它会在几个小时内同步到中央。

引擎盖下

如果您使用的是 Maven,那么大多数更改只需要使用相关细节(组、邮件列表、主页,尤其是<scm/>)装饰您的 POM。(查看其源代码sonatype-oss-parent)pom 完成所有剩余的工作,其中包括:

  • <distributionManagement/>标签_
  • maven-enforcer-plugin配置(特别是为了避免来自 的一些错误签名maven-gpg-plugin
  • maven-release-plugin在 OSS 上发布时要调用的特殊构建配置文件的 设置,其中包括以下调用:
    • source:jar
    • javadoc:jar
    • gpg:sign

当然,您可以手动完成所有操作 - 只需将 sonatype-oss-parent 的内容复制到您自己的内容中即可。但是,我认为它有点可避免的麻烦。:)

希望能帮助到你。

于 2013-01-01T08:50:12.407 回答
0

好吧,您可以在此处阅读有关如何在 Maven Central Repo(s) 上上传包的完整分步详细指南。

此外,您可以在此处阅读有关存储库的信息

于 2012-12-31T07:12:25.697 回答