温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

发布jar到maven中央仓库的方法

发布时间:2021-06-26 10:06:12 来源:亿速云 阅读:225 作者:chen 栏目:大数据

这篇文章主要介绍“发布jar到maven中央仓库的方法”,在日常操作中,相信很多人在发布jar到maven中央仓库的方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”发布jar到maven中央仓库的方法”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

注册sonatype工单系统账号

必须步骤,去这个网址注册一个账号

https://issues.sonatype.org/secure/Signup!default.jspa

我们需要提交一个工单申请提交jar包的权限,所以必须创建一个账号提交工单,这个账号同样可以用sonatype的Nexus,我们通过Nexus最终发布到中央库。

发布jar到maven中央仓库的方法

提交工单

登陆 issues.sonatype.org,点击顶部导航的new新建一个工单,按照下图填写 发布jar到maven中央仓库的方法

字段说明

Project: 选 Community Support - Open Source Project Repository Hosting

Type: 选 New Project

Summary: 主题,必填, 根据实际情况填写

Description: 描述,选填, 根据实际情况填写

Attachment: 附件,选填

Group Id: 项目的GroupId, 同pom.xml中的GroupId一致, 必填,没有的可以使用你的github

Project URL: 项目的url, 必填,如果项目代码在github上,一般填入项目的github url

SCM url:项目的代码地址,是可以用git clone下代码的地址,可以是github或国内的码云

Already Synced to Central: 是否已经同步到中央库,如果没有选No就可以了。

然后点【新建】提交,等待工作人员review。这时,工单的状态是Open, 如果提供的信息没有问题的话, 状态会从open变成resolved。 这个大概一两个小时就能得到回复。回复的内容一般就是需要验证groupid是属于你自己的域名。

回复内容如下:

发布jar到maven中央仓库的方法

根据回复,给域名添加一个txt记录是最快的方式,添加完给回复一下,大概不到10分钟官方人员就给处理了。

配置项目的pom.xml

pom.xml中添加如下配置

<parent>
	<groupId>org.sonatype.oss</groupId>
	<artifactId>oss-parent</artifactId>
	<version>7</version>
</parent>


<licenses>
	<license>
		<name>The Apache Software License, Version 2.0</name>
		<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
		<distribution>repo</distribution>
	</license>
</licenses>
<scm>
	<url>项目地址</url>
	<connection>项目地址</connection>
	<developerConnection>roseboy.net</developerConnection>
</scm>
<developers>
	<developer>
		<name>作者姓名</name>
		<email>作者邮箱</email>
	</developer>
</developers>

配置maven setting.xml添加server

在servies节点下添加以下代码:

<server>
	<id>sonatype-nexus-snapshots</id>
	<username>第一步注册的用户名</username>
	<password>第一步注册的密码</password>
</server>
<server>
	<id>sonatype-nexus-staging</id>
	<username>第一步注册的用户名</username>
	<password>第一步注册的密码</password>
</server>

至此,跟maven有关的配置已经完成,但是现在还不能上传jar包,还需要配置gpg-key用来签名校验,防止坏人篡改你的jar包。

配置gpg-key

直接这个网址 https://www.gnupg.org/download/index.html 下载安装版,使用图形界面操作。 点击新建 ,填写 名字,邮箱,密码等生成key,完成会弹框询问是否上传,点击 上传按钮把公钥上传。

发布jar到maven中央仓库的方法

上传至sonatype的Nexus

执行maven部署命令

mvn clean deploy -P sonatype-oss-release -Darguments="gpg.passphrase=密钥密码"

如果使用idea集成环境,按照下图操作,最后双击 deploy。

发布jar到maven中央仓库的方法

发布jar到maven中央仓库的方法

等到执行完成,这时,你的jar源码 ,生成的docjar,打包完的jar已经传到Nexus上了。

登录Nexus,发布到中央仓库

使用第一步注册的账号登陆以下网址,https://oss.sonatype.org/#stagingRepositories (左边 Build Promotion --> Staging Repositories) 查看,一般是最后一个,可以按时间倒弃查看,也可以通过右上角的搜索框查找。 发布jar到maven中央仓库的方法 此时的状态应该是open,选中构件, 点击上方的Close->Confirm,nexus会去做一些处理以及校验,如果校验失败,需要删除构件,修改后得新上传。

如果校验成功,选中构件,点击上方的Release->Confirm,发布成功后,状态会变成Releaed, 然后自动删除。

可以在页面左侧点击Advanced Search 查看,如果能搜到发布的模块,说明已经成功了。

通常10分钟内会发布到maven中央库,但如果更新到search.maven.org需要两个小时。如果在 https://mvnrepository.com/ 能搜到,需要1-2天的时间。

发布到中央仓库的插件

执行完之后maven delploy,还需要登录到Nexus等待校验完成再手动发布,这一步比较麻烦,可以使用插件来完成这些操作;

项目的pom.xml增加以下额配置:

<plugin>
<groupId>org.sonatype.plugins</groupId>
<artifactId>nexus-staging-maven-plugin</artifactId>
<version>1.6.7</version>
<extensions>true</extensions>
<configuration>
<serverId>sonatype-nexus-staging</serverId><!--这个是在setting.xml配置的用户名密码-->
<nexusUrl>https://oss.sonatype.org/</nexusUrl>
<autoReleaseAfterClose>true</autoReleaseAfterClose>
</configuration>
</plugin>

添加插件后,直接运行mvn deploy就可以发布到中央仓库,只是时间有点长。

到此,关于“发布jar到maven中央仓库的方法”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI