如题,本文将介绍怎样在Linux环境下快速地将本地的JAR包发布至Maven中央库房上传文件到linux服务器,分享给其他的开发者使用。其他操作下的操作过程大致相同(MacOS和Windows下的GPG只时安装的文件略微有差别)。作为一名Java开发者,学习此技能很有必要!
首先,假设你在本地机器上早已完成了基于Maven的软件编码工作。接出来,须要将工程打包上传至Maven中央库房,须要打算的工作如下:
1.NewSonatypeProject
想要将自己的JAR发布到Maven中央库房,首先得注册一个Sonatype帐号。访问完成注册工作(请谨记帐号和密码),之后使用注册好的用户名和密码进行登陆。步入控制面板后,点击“新建”按钮开始创建一个新的项目。
提示:
注意问题类型的选择,一定要选择“NewProject”选项。白色标明部份为必填选项,其余的选项按照个人喜好选填。
2.VerifyownerShip
在Sonatype创建好项目等待几分钟后,管理员会发送一份信息到项目下方的评论区,比如:
最快的方法是采用域名认证的方法,在本文中,我的groupId是com.ramostear,为此linux系统,步入到域名提供商的控制台redhat linux 9.0,在对应的域名下添加一条TXT记录,比如:
提示:
主机记录值为Sonatype中创建的项目编码(比如:OSSRH-57599),记录值为Sonatype中创建的项目访问地址(比如:)
TXT记录解析成功后,在Sonatype项目评论区回复管理员域名为你所有,且早已完成域名解析工作,管理员收到信息后,会再度回复你初审信息。诸如:
3.gnupg
在上传JAR到Maven中央库房时,须要提供一个用于验证JAR的私钥,因此,我们须要安装gnupg并生成对应的gpg证书。打开终端,之后输入下安装gnupg。
$ sudo apt-get install gnupg
gnupg安装完成后,使用gpg—gen-key生成一个新的证书:
$ gpg --gen-key
提示:
在生成证书的过程中,要求填写用户名和电子邮箱等信息,其中用户名和电子邮箱最好与Sonatype的保持一致。
证书生成后,可以使用gpg—list-keys查看证书信息:
$ gpg --list-keys
4.mavenconfig
首先,步入Maven的安装目录,之后打开/conf/settings.xml文件并添加如下的server配置信息:
sonatype-nexus-snapshots
sonatype account name
sonatype account password
sonatype-nexus-staging
sonatype account name
sonatype account password
提示:
在server配置项中,username和password均为你在Sonatype网站注册的用户名和密码。
接出来,打开项目的pom.xml文件添加配置信息,比如:
oss-paren
org.sonatype.oss
oss-parent
7
提示:
添加oss-parent配置信息可以简化pom.xml的配置(你何必再添加编译,文档等插件的配置)
developer
ramostear
//www.ramostear.com
ramostear@163.com
developer
admin
提示:
开发者信息按照实际情况进行添加,但不能为空。
scm
scm:git://github.com/ramostear/happy-captcha.git
scm:git://github.com/ramostear/happy-captcha
git://github.com/ramostear/happy-captcha.git
提示:
SCM中的地址对应更改成你自己的项目地址即可(使用Github或Gitee没有影响)。
Licenses
The Apache Software License,Version 2.0
//www.apache.org/licenses/LICENSE-2.0.txt
提示:
若你的项目不是以Apache2.0开放源代码许可合同发布,请对应更改为你自己项目的许可合同
5.publishgpgkey
在上传JAR之前,我们须要将gpg的私钥发布到keyServer上。Sonatype会从以下三个服务器中获取私钥并验证你的JAR包。
接出来,我们将通过gpg命令将之前生成的gpg私钥发布到里面的三个服务器中。命令格式如下:
$ gpg --keyserver url --send-keys gpg-pub-key
以我的为例:
$ gpg --keyserver //pool.sks-keyservers.net:11371 --send-keys 32360AE**************C97
$ gpg --keyserver //keys.openpgp.org.net:11371 --send-keys 32360AE**************C97
$ gpg --keyserver //keyserver.ubuntu.com:11371 --send-keys 32360AE**************C97
在发布私钥时,请注意不要忘掉加“11371”端标语。
6.uploadjar
完成以上5个操作后,我们便可以上传本地JAR到Maven中央库房。步入到本地工程目录,之后输入以下命令发布项目:
$ mvn clean deploy -P sonatype-oss-release -Darguments="gpg.passphrase=通常为密码"
回车后,等待片刻,控制台会提示你输入密令(该密令是你在生成gpg证书时输入的密码)。
验证成功后,系统将手动编译并布署项目到Sonatype的远程库房中:
7.closeandreleaserepository
项目布署成功后,访问,并使用在Sonatype注册的帐号和密码进行登陆。登陆成功后,点击两侧菜单中的“StagingRepositories”选项进行下一步操作:
步入Repositories控制面板后,可以在列表中看见之前发布的项目信息,选择该记录上传文件到linux服务器,之后点击列表上方的“Close”按钮,关掉当前的Repository,最后你可以点击最下方的“Activity”选项卡查看进度:
稍等片刻,当“Close”流程完成后,点击列表上方的“Release”按钮,将项目递交到Maven中央库房中。
以上步骤完成后,你还须要返回Sonatype官网,在项目的评论区告知管理员你已然上传项目,而且早已发布了RELEASE版本,恳请关掉本次Issues。诸如:
管理员会回复你:组件会在10分钟之内发布到Central,两小时以后你可以在网站上检索到你发布的组件。
8.search
项目成功发布以后(起码须要2小时的等待时间),我们可以通过网站检索自己的项目。
本文原创地址://q13zd.cn/rhzlhjxksdjj.html编辑:刘遄,审核员:暂无