服务SDK三方新版中央仓库和私服发布详解
- 预备信息
- Github仓库发布
- Gradle版本匹配
- Gradle项目构建全局变量定义
- Gradle项目Nexus仓库配置与发布过程
- Gradle项目发布至Sonatype中央仓库配置过程
- 总结
当我们在实现一个项目技术总结、工具类封装或SDK封装,通常是为了方便开发者使用特定服务或平台而提供的一组工具和API。您可能需要将其发布到一个三方仓库或私服中,以便其他开发者能够方便地获取和集成。那么我们怎么才能将这些产物发布到私服或各个公共平台上呢,下面用不同方式针对jar、maven产物发布与上传;
预备信息
- 老版本sonatype maven地址:https://oss.sonatype.org/
- 新版sonatype maven地址:https://s01.oss.sonatype.org/
- Sonatype控制台发布列表:https://central.sonatype.com/publishing/deployments
Github仓库发布
Ps. 首先你得需要创建一个Github账号
- 创建一个仓库(Github Repository)
- 填写仓库的基本信息
- 创建或添加一个仓库访问密钥(SSH Key)
- 最后由git上传仓库代码即可
#初始化仓库 git init #添加仓库地址 git remote add origin <远程git地址> #添加本地文件 git add . #提交本地仓库 git commit -m 'xxxx' #推送代码至远程仓库 git push origin main
Gradle版本匹配
如果项目同时要发布到私有仓库Nexus和中央仓库Sonatype,在构建时需要加入不同的插件(id "maven-publish"和id “com.vanniktech.maven.publish” version “0.30.0”)而同时支持这两个插件需要gradle版本必须8.5及以上;只要修改项目gradle-wrapper.properties中的版本,然后同步即可;
Gradle项目构建全局变量定义
这里全局变量私有仓库Nexus和中央仓库Sonatype的参数,每个参数描述在下方标有详细解释,待后面留用;【以下定义的参数变量在后续配置中不作详细说明】
#文件以utf-8格式编码
org.gradle.java.encoding=UTF-8
#私服仓库发布地址
RELEASE_URL=https://mvn.geease.com/repository/basejars/
#私服仓库快照发布地址
SNAPSHOT_URL=https://mvn.geease.com/repository/basejars/
#开源项目的主页地址
PROJECT_URL=https://github.com/eyinfo/clepton
#开源项目签名信息名称
SOURCE_LICENSE_NAME=LGPL-3.0-License
#开源项目签名信息主站
SOURCE_LICENSE_URL=https://www.gnu.org/licenses/lgpl-3.0.html
#开源项目签名信息分发主站
SOURCE_LICENSE_DISTRIBUTION=https://www.gnu.org/licenses/lgpl-3.0.html
#开源项目git相对地址,用于sonatype平台发布scm仓库地址设置
GIT_RELATIVE_URL=eyinfo/clepton.git
#用于发布sonatype后显示开发者名称
DEVELOP_NAME=LiJingHuan
#用于发布sonatype后显示开发者email
DEVELOP_EMAIL=ethan0866@163.com
#发布版本号
VERSION=1.0.2
#发布组织名称,需要与sonatype平台命名空间一致
GROUP_ID=io.github.eyinfo
#发布项目唯一标识
ARTIFACT_ID=foundation
#发布项目后的描述信息