HDIS-Framework是一个基于SpringBoot、Kubernetes、阿里云服务,编写的一个用于支撑微服务的极速开发框架。
其文档详尽,Demo全面,设计合理,开箱即用,节省开发时间,提升开发效率。
配套的docker、Kubernetes教程已踩过各种坑,让你的微服务无障碍的顺畅运行起来。
HDIS与Kubernetes或SpringCloud配合使用,能达到最佳效果。
https://issues.sonatype.org/secure/Signup!default.jspa
注意!Project请选择‘Community Support - Open Source Project Repository Hosting (OSSRH)’
https://issues.sonatype.org/secure/CreateIssue!default.jspa
注意!只需要填写
Group Id:项目Maven的GroupID,注意,GroupID是一个需要你购买了的域名,否则审核员会DISS你。
Project URL:你的git项目主页,如:(https://gitee.com/w6513017/HDIS-Framework)
SCM url:可拉取项目的git地址,如:(https://gitee.com/w6513017/HDIS-Framework.git)
进入工单页面查看Activity ===> Comments部分,此处为你和审核员的聊天内容。
当页面上审核状态(Status)为resolved时,才可以向中央仓库提交jar包。
审核通过后会出现以下内容:
Permalink
twatson Thad Watson added a comment - Yesterday
Configuration has been prepared, now you 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
Promote staged artifacts into repository ‘Releases’
Download snapshot and release artifacts from group https://oss.sonatype.org/content/groups/public
Download snapshot, release and staged artifacts from staging group https://oss.sonatype.org/content/groups/staging
please comment on this ticket when you promoted your first release, thanks
注意最后一句,当你发布第一个release后,请通知审核员一声。否则他不会为你激活向中央仓库同步。到时候你就玩蛇了!
需要在POM中完善name、description、url、license、scm、developer的信息
HDIS-Framework
支撑Java项目的,基于SpringBoot、阿里云的一系列公共组件,规定的一系列架构约束。
https://gitee.com/w6513017/HDIS-Framework
Apache License Version 2.0
http://www.apache.org/licenses/LICENSE-2.0
https://gitee.com/w6513017/HDIS-Framework.git
scm:git:https://gitee.com/w6513017/HDIS-Framework.git
scm:git:https://gitee.com/w6513017/HDIS-Framework.git
master
Nicholas.ZW.H
[email protected]
需要在POM文件中配置distributionManagement
snapshots
https://oss.sonatype.org/content/repositories/snapshots
releases
https://oss.sonatype.org/service/local/staging/deploy/maven2
在/home/.m2/settings.xml中设置JIRA的账号和密码
snapshots
你的用户名
你的密码
releases
你的用户名
你的密码
配置源代码插件、文档插件
org.apache.maven.plugins
maven-source-plugin
2.4
attach-sources
jar
org.apache.maven.plugins
maven-javadoc-plugin
2.10.4
attach-javadocs
jar
下载gpg。注意!请选择GnuPG 1.4版本,高版本插件支持有问题!
下载地址:
https://www.gnupg.org/download/index.html
配置环境变量
将gpg的安装目录配置进path
安装gnupg
yum install -y gnupg
安装rng-tools,补充熵池。否则它在生成密钥的时候会卡住!
yum install -y rng-tools
配置rng-tools
echo 'EXTRAOPTIONS="--rng-device /dev/urandom"' >/etc/sysconfig/rngd
service rngd restart
chkconfig rngd on
按照提示一步步执行即可
gpg --gen-key
使用命令查看key
gpg --list-keys
得到密钥以后需要上传至公钥服务器。
maven在发布release版本时需要在公钥服务器上拉取密钥,进行验证。
以下为公钥服务器列表,国内只有它能访问!公钥服务器之间会自动同步。
keyserver.ubuntu.com
上传公钥
gpg --keyserver hkp://keyserver.ubuntu.com --send-keys [公钥ID]
验证公钥
gpg --keyserver hkp://keyserver.ubuntu.com --recv-keys [公钥ID]
导出公钥
gpg --armor --output public-key --export [用户ID]
导出私钥
gpg --armor --output private-key --export-secret-keys [用户ID]
导入密钥
gpg --import [密钥文件]
从公钥服务器导入公钥
gpg --keyserver hkp://subkeys.pgp.net --search-keys [用户ID]
删除私钥
gpg --delete-secret-keys [用户uid]
删除公钥
gpg --delete-keys [用户uid]
由于发布releases环境才会用到gpg,因此可以设置profile进行环境的隔离。
注意!插件版本必须使用1.4版本,1.4以上版本会卡住。
注意!properties需要设置gpg.exe地址。
D:\Program Files (x86)\GNU\GnuPG\gpg.exe
org.apache.maven.plugins
maven-gpg-plugin
1.4
sign-artifacts
verify
sign
修改version,并加上‘-SNAPSHOT’后缀
-SNAPSHOT
注意:snapshot版本提交时,并不需要gpg签名,直接提交即可。
执行:
mvn clean deploy
在snapshot仓库中可以看到已经发布的snapshot版本
snapshot仓库地址:
https://oss.sonatype.org/content/repositories/snapshots/
修改version,并取消‘-SNAPSHOT’后缀
注意:release版本提交时,需要gpg签名。
执行:
mvn clean deploy -P release
https://oss.sonatype.org/#stagingRepositories
查看你所提交的Repository。
勾选需要sonatype验证的Repository,点击菜单栏的Close。
在下方状态栏中(Activity)可以看见sonatype正在执行验证,并且会实时的显示验证结果
当验证完成后!
查看你所提交的Repository。
勾选需要sonatype发布的Repository,点击菜单栏的Release。
在下方状态栏中(Activity)可以看见sonatype正在执行发布,并且会实时的显示验证结果
整个Repository消失后,表示发布成功,可以在仓库中找到了。
sonatype仓库地址:
https://oss.sonatype.org/content/repositories/releases/
过一段时间后,中央仓库会从sonatype仓库同步。中央仓库查看地址:
http://mvnrepository.com/