在将 Maven 的包上传到中央仓库并且创建发行版之前需要对包进行 GPG 签名。
如果你使用的是 Window 操作系统,请参考: 如何在 Windows 上创建一个新的 GPG key 页面中的内容来对 GPG key 生成器进行安装,并且创建一个 key。
需要注意的时候,你创建的 Key 还要上传到 Key 的公钥仓库中,具体的办法请参考文章:GPG 使用 Maven 签名后发送到中央仓库提示 Upload your public key and try the operation 中的内容。
当你完成所有操作后,你就可以对你的 POM 文件进行修改了。
对 POM 文件进行修改
对 POM 进行有几个地方需要进行修改,有些地方的修改是一次性的。
我们假设你现在的 POM 不具有任何部署条件。
我们也是参考了官方的配置文件说明:Apache Maven - The Central Repository Documentation
首先你的版本号是不能包含有 -SNAPSHOT 这个关键字的。
可以使用下面的命令:
mvn versions:set -DnewVersion=0.0.2
这个 mvn 的命令将会搜索你系统中的版本,并且将版本进行重命名并且统一。
从控制台的输出中,我们已经看到版本号进行了调整。
添加 maven-gpg-plugin 插件
在 pom 文件中,添加 maven-gpg-plugin 插件到插件列表中。
这个插件的位置是位于 build 下面的。
具体内容入下,你可以不需要对任何内容进行修改,如果你有高版本的话,也可以使用高版本。
<build>
<plugins>
<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>
添加 .m2 目录下的 settings.xml
需要添加的内容如下:
<settings>
<profiles>
<profile>
<id>ossrh</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<gpg.executable>gpg2</gpg.executable>
<gpg.passphrase>the_pass_phrase</gpg.passphrase>
</properties>
</profile>
</profiles>
</settings>
需要注意的是可以执行的文件,在上面我们使用了 gpg2,如果你的操作系统中没有这个的话,你有可能会使用 gpg,这个与你的安装有关。
可以在 Windows 下运行 cmd,以确定 gpg 被添加到你的系统中了。
秘钥部分为最开始你创建的秘钥,这个是在 Kleopatra 中可以找到的。
根据你需要安装的秘钥,拷贝上面的 Key-ID 填到这里即可。
完成所有上面的配置后运行命令:
mvn clean deploy
然后等待服务器的反馈结果。
一般来说需要几个小时后你的库才会被全世界都看到。
是不是很激动呀。
鼓励所有有条件的公司和个人都可以这样将开源项目上传到中央 Maven 仓库中。