发布包到maven公共仓库图文教程(1) --- 注册账号和提交申请

2 篇文章 0 订阅

当你有个很好的想法, 写了一个开源的项目,想发布到maven公共仓库给别人用的时候, 你可能就需要这篇教程。

整个教程分三篇博客讲解

申请账号

打开网址: https://issues.sonatype.org/secure/Dashboard.jspa

在这里插入图片描述这个网址打开会有点慢, 如果不能打开就需要一些科技了。 毕竟国外的网络只能这样。 因为我已经注册了账号并记住密码了, 所以图中账号密码自动填写了。

注册账号

点击sign up 链接会跳转到注册信息填写页面
在这里插入图片描述

  • email 邮箱地址, 很重要, 后面会用来接收邮件。 我填写了自己的qq邮箱
  • full name 你的全名, 你可以填写自己的英文名。
  • username 用户名
  • password 密码必须符合规则. 规则比较复杂, 我是使用LastPass插件自动生成的。这个插件强烈推荐, 我的所有账号密码都记录在这个插件.

注册要求的密码规则十分复杂,按照提示设置后, 还需要拿个本子记下来, 因为后买会用到这个密码

注册成功后会出来下面的页面。 同时也会往你的注册邮箱里面发送一份邮件。如果密码忘记了可以通过邮箱找回密码
在这里插入图片描述
在这里插入图片描述
注册成功后再次点开开始的页面, 填写刚刚注册的账号密码登录。
在这里插入图片描述
登录成功后会进入上图所示的页面。 说明注册成功了, 就可以进行下一步了。

提交申请

上面的操作已经注册账号成功了, 并且登录进去了, 此时点击登录进入页面的正上方的create 按钮。 出现下图所示页面
在这里插入图片描述
图中每项说明:

  • Project 如果是发布开源包给其他使用, 选择 Community Support - Open Source Project Repository Hosting (OSSRH)
  • Issue Type 选择 New Project
  • suumary 填写发布包的简介
  • Description 填写说明。 可不填
  • Attachment 可不填
  • Group Id 填写你的包的group id。 你的包的group id 不要随便命名, 后面会需要验证这个的。 我是因为有自己的域名 xiezc.xyz, 所以我的包的group id都是使用的xyz.xiezc作为group id的。
  • Project URL 你的项目的源码地址, 填写的项目的github地址就可。
  • SCM ur 填写你的github项目的git url。 记住是git clone的url,带.git后缀的url。
  • Username 可以不用填。
  • Already Synced to Central 选择None

上面的填完后提交, 会创建一个issues。 找到这个issues后点开如下图所示。

在这里插入图片描述
注意图中的下面的红框,maven仓库的管理员会通过Comments来告诉你下一步如何做的,并且同时也会发送邮件到你邮箱通知你。 图中红框中管理员给我的指示是:
在这里插入图片描述
我的 group id 使用xyz.xiezc,他要我来证明这个域名是我自己的, 给了我两种证明的方法,

  1. 在域名下增加txt类型的DNS解析记录来执行这个issues 。
  2. 设置域名重定向到你的github页面,前提是这个域名之前没有这样做过。

如果你group id使用的是你的github地址 com.github.yourname. 则是另外一种验证方式, 需要你在新建一个github空白仓库, 仓库名称就是你的issue的编号, 按照上图中就是 OSSRH-57801。 并且在下面的comment中告知管理员, 管理员回去验证的。

验证你的group id

我选择了第一种方式: 增加DNS解析记录。
在这里插入图片描述
图中是我的阿里云页面增加的解析记录。
然后再在之前创建的issue中增加comment 评论。
在这里插入图片描述
图中我告知管理员我增加了DNS的TXT解析记录。 并告知了验证方式。 管理员很快回复了我, 并告知我审核通过了,我可以上传快照版本到https://oss.sonatype.org/content/repositories/snapshots地址,上传发布版本到https://oss.sonatype.org/service/local/staging/deploy/maven2地址了.

central-ossrhCentral OSSRH added a comment - 2 days ago
xyz.xiezc has been prepared, now user(s) xiezc can:

Deploy snapshot artifacts into repository https://oss.sonatype.org/content/repositories/snapshots
Deploy release artifacts into the staging repository https://oss.sonatype.org/service/local/staging/deploy/maven2
Release staged artifacts into repository 'Releases'
please comment on this ticket when you promoted your first release, thanks

到这里注册账号, 提交申请已经完成了, 接下来就是打包签名和上传发布了。 剩下的步骤我会留在下篇博客中讲述。

GPG签名使用

下篇博客讲解

打包注意事项

下篇博客讲解

上传发布

下篇博客讲解

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
Maven插件是一种可插拔的工具,可以在Maven构建过程中执行特定的任务。其中,maven-dependency-plugin和maven-surefire-plugin是两个常用的插件。 maven-dependency-plugin插件可以用来管理项目依赖,可以帮助我们列出项目中的依赖关系,复制依赖文件到指定目录,解压依赖文件等。常用的配置包括: - list:列出项目依赖 - copy-dependencies:将所有依赖文件复制到指定目录 - unpack:解压指定的依赖文件 maven-surefire-plugin插件则是用来执行项目的单元测试的。它可以在Maven构建过程中自动执行单元测试,并生成测试报告。常用的配置包括: - includes/excludes:指定要执行的测试类或排除的测试类 - parallel:指定测试是否并行执行 - reportsDirectory:指定测试报告生成的目录 在POM文件中配置这两个插件,可以通过以下方式: ``` <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <version>3.2.0</version> <executions> <execution> <id>copy-dependencies</id> <phase>package</phase> <goals> <goal>copy-dependencies</goal> </goals> <configuration> <outputDirectory>${project.build.directory}/lib</outputDirectory> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>3.0.0-M5</version> <configuration> <includes> <include>**/*Test.java</include> </includes> <parallel>methods</parallel> <threadCount>10</threadCount> <reportsDirectory>${project.build.directory}/surefire-reports</reportsDirectory> </configuration> </plugin> </plugins> </build> ``` 以上是一个简单的POM文件中Maven插件配置maven-dependency-plugin和maven-surefire-plugin的示例,其中maven-dependency-plugin在package阶段执行复制依赖文件的任务,maven-surefire-plugin在test阶段执行单元测试。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值