mac系统
maven
java
Sonatype官网:http://www.sonatype.org/
注册地址:https://issues.sonatype.org/secure/Signup!default.jspa
oss地址:https://oss.sonatype.org
登录 Sonaytype Jira 创建一个 issue
创建一个 issue
Project 选择 Community Support - Open Source Project Repository Hosting (OSSRH)
Issue Type 选择 new Project
Summary 输入你的 项目介绍
GroupId 填写你的工程使用的 groupId,如 io.github.xxx,如果是其他,必须是自己的域名,必要时,管理员会要求你用填写域名的邮箱发送验证邮件来证明域名是你的;
其他不用填写,直接点击 Create,创建一个 issue
接下来就是等待回复了;
审批通过之后,会回复你这样的内容
ossrh
刚注册的用户名
密码
添加setting.xml添加profile
ossrh
true
gpg2
the_pass_phrase
下载安装gpg2
生成gpg2签名
$ gpg2 --gen-key
# 接下来会要求输入 username 和 email,请对号入座,确认信息之后会弹出一个 shell 对话框,要求输入签名秘钥passphrase,输入一个自己记得住的秘钥,一定要记下来,以后每次 deploy 都会使用到。确认后完成签名的生成。
pub rsa2048 2019-04-25 [SC] [有效至:2021-04-24]
4140A213ED5136AB8130E3E0B66F18CEA315F945
uid yingxiaoyong <[email protected]>
sub rsa2048 2019-04-25 [E] [有效至:2021-04-24]
其中4140A213ED5136AB8130E3E0B66F18CEA315F945 这个是我们后面要用到的公钥key
# 上传 GPG 公钥到秘钥服务器
$ gpg2 --keyserver hkp://pool.sks-keyservers.net --send-keys 公钥ID
# 通过下面的命令验证是否上传成功
$ gpg2 --keyserver hkp://pool.sks-keyservers.net --recv-keys 公钥ID
4.0.0
io.github.yxylemon
excel-boot
1.1.RELEASE
org.sonatype.oss
oss-parent
9
The Apache Software License, Version 2.0
http://www.apache.org/licenses/LICENSE-2.0.txt
repo
https://github.com/yxylemon/excel-boot
https://github.com/yxylemon/excel-boot.git
https://github.com/yxylemon/excel-boot
yingxiaoyong
[email protected]
https://github.com/yxylemon/excel-boot
org.apache.poi
poi-ooxml
4.0.1
org.apache.poi
poi-ooxml-schemas
4.0.1
xerces
xercesImpl
2.12.0
org.projectlombok
lombok
1.18.4
provided
javax.servlet
servlet-api
3.0-alpha-1
provided
org.slf4j
slf4j-api
1.8.0-beta2
com.google.guava
guava
27.0.1-jre
ossrh
https://oss.sonatype.org/content/repositories/snapshots
ossrh
https://oss.sonatype.org/service/local/staging/deploy/maven2/
org.apache.maven.plugins
maven-compiler-plugin
1.6
1.6
UTF-8
release
org.apache.maven.plugins
maven-source-plugin
2.1.2
attach-sources
jar
org.apache.maven.plugins
maven-javadoc-plugin
2.10.1
attach-javadocs
jar
org.apache.maven.plugins
maven-gpg-plugin
1.5
sign-artifacts
verify
sign
其中scm,developer修改成自己的地址,plugins中source,javadoc,gpg是必须的
发布构建到 Sonatype
我 pom.xml 里面定义的 profiles id 为“release”,所以我执行下面的 Command
$ mvn clean deploy -P release
## 过程中会要求输入前面生成 GPG 秘钥的 passphrase,输入即可
如果不出意外,整个过程将会一帆风顺,刷过几屏日志之后,本地 Maven 构架就已经上传到 Sonatype 的 OSS 暂存仓库上了,注意只是StagingRepositories,还没有到中央仓库;
这是就可以登录 https://oss.sonatype.org/ 查看了
点击 左侧菜单栏当中的 Staging Repositiries,在右上角的搜索框中输入自己的 groupId 进行模糊检索;找到自己刚才 deploy 的构建;
Staging Repositiries
勾选构建,点击 Close ,输入一段 Description 之后点击 Confirm 按钮;
之后需要等待一段时间,等 Close Staging 的状态生效之后,就可以再次登录oss找到自己的构建,选中之后,点击 Release 按钮;再次 Confirm 之后,恭喜你,你的构建已经正式发布到 Maven 中央仓库了。
接下来,到中央仓库:https://search.maven.org/ 搜索到你的构建了,如果没有搜索到,稍等片刻一定会有的,OSS 同步到中央仓库需要一点点时间;
如果你已经在中央仓库搜索到自己的构建了,记得回到 sonatype 的 jira issue 里面回复管理员你已经完成了构建,可以 Close this issue 了;
tips:如果想自动close-release 可以把上面的注解的组建nexus-staging-maven-plugin注解打开