前言
对于工作了多年的老程序员来说,往往会总结出一些比较好用的开发工具包。那么如果把这些好的工具插件共享出来供大家快速的使用呢,最好的方式就是将这些工具插件上传到Maven中央仓库/Maven阿里云云效仓库,这样,有需要用到这些工具插件的同学之间通过maven导入这些工具插件就可以快速使用了。下面我将一步一步教大家怎么将自己总结的工具插件上传到Maven中央仓库/Maven阿里云云效仓库。
一、准备工作
- Github / Gitee 或者其他代码托管平台账号
二、注册issues.sonatype.org账号
- 如下图,打开https://issues.sonatype.org/网站,点击“Sign up”创建一个账号。
- 填写注册信息,进行注册。
- 注册成功 登录新建项目
- 看注释:
Group Id如果是自己的域名,则需要验证域名可用性,如果是Gitee/Githup的域名,则不需要验证
验证域名的话可以在DNS中做如下解析:
如果是使用Gitee/Githup的话按照提示创建项目即可。
三、下载安装Gpg4Win
下载地址官网:https://www.gpg4win.org/
- 创建密钥
- 上传密钥
四、配置本地maven的settings文件
- 配置servers
配置servers<servers><server><id>ossrh</id><username>第一步注册的账号issues.sonatype.org账号</username><password>第一步注册的密码issues.sonatype.org密码</password></server>
</servers>
- 配置profiles
<profiles>
<profile><id>ossrh</id><activation><activeByDefault>true</activeByDefault></activation><properties><gpg.executable>这里填你安装的GnuPG位置D:\app\GnuPG\bin\gpg.exe</gpg.executable><gpg.passphrase>刚才你生成密钥时输入的密码</gpg.passphrase><gpg.homedir>这里填你秘钥在磁盘上的位置C:\Users\xql15\AppData\Roaming\gnupg</gpg.homedir></properties>
</profile>
</profiles>
五、配置上传项目的pom文件
build plugins必须添加maven-javadoc-plugin;maven-source-plugin;maven-gpg-plugin,否则在发布到sonatype进行验证时会报错
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.gitee.xu_qing_lei</groupId><name>utils</name><artifactId>utils</artifactId><version>1.0</version><packaging>jar</packaging><description>init</description><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><maven.compiler.source>1.8</maven.compiler.source><maven.compiler.target>1.8</maven.compiler.target></properties><!--开源协议--><licenses><license><name>Apache License, Version 2.0</name><url>http://www.apache.org/licenses/LICENSE-2.0.txt</url><distribution>repo</distribution><comments>A business-friendly OSS license</comments></license></licenses><!--项目地址--><url>https://gitee.com/xu_qing_lei/utils</url><!--开发者信息--><developers><developer><id>utils</id><name>utils</name><email>2606482590@qq.com</email><roles><role>Developer</role></roles><timezone>+8</timezone></developer></developers><!--项目在github或其它托管平台的地址--><scm><connection>https://gitee.com/xu_qing_lei/utils.git</connection><developerConnection>scm:git:ssh://git@gitee.com:xu_qing_lei/utils.git</developerConnection><url>https://gitee.com/xu_qing_lei/utils/tree/master</url></scm><dependencies><!--项目依赖--><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>1.3.2</version></dependency></dependencies><build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-source-plugin</artifactId><version>2.2.1</version><executions><execution><id>attach-sources</id><goals><goal>jar-no-fork</goal></goals></execution></executions></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-javadoc-plugin</artifactId><version>2.9.1</version><configuration><additionalJOptions><additionalJOption>-Xdoclint:none</additionalJOption></additionalJOptions></configuration><executions><execution><id>attach-javadocs</id><goals><goal>jar</goal></goals></execution></executions></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-gpg-plugin</artifactId><version>1.5</version><executions><execution><id>sign-artifacts</id><phase>verify</phase><goals><goal>sign</goal></goals></execution></executions></plugin></plugins></build><distributionManagement><snapshotRepository><id>ossrh</id><url>https://s01.oss.sonatype.org/content/repositories/snapshots</url></snapshotRepository><repository><id>ossrh</id><url>https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/</url></repository></distributionManagement></project>
六、打包 上传deploy
mvn clean compile package deploy
执行完成会弹窗 输入第一次生成密匙的密码
七、登录s01.oss.sonatype.org完成最后的发布
账号密码同第一步注册的issues.sonatype.org
按照下图步骤一步一步操作
在点击Close 验证的时候可能会出现错误,导致不能执行下一步,这个时候需要调整项目pom配置,调整好后,重新发布,再次验证不报错即可
八、查看结果
发布完后,大概半小时后可以在Maven中央仓库看到:https://central.sonatype.com/
然后可以在https://mvnrepository.com/
和Maven阿里云云效仓库https://developer.aliyun.com/mvn/search 查询到。
附录:参考资料
https://blog.csdn.net/Nuomen/article/details/129240511
https://blog.csdn.net/qq_42264638/article/details/130207209
https://blog.csdn.net/g5zhu5896/article/details/129775658
https://cloud.tencent.com/developer/article/2120266