上传利用GitHub管理的软件到Maven Central Repository之二

pom.xml文件修改完毕后,现在进行其他准备。如果还没修改pom那么请参阅该系列的第一篇

1. 生成为软件数字签名所需的key。这里用到的工具是GPG。这个工具在Git Bash和Linux中可以直接运行。否则可以到这里下载。

GPG准备好以后,可以运行:

gpg --gen-key

出现如下提示后输入1:

 

在如下提示后输入想要的KEY的位数,没有特别需要的话直接回车也可以:

接着会出现询问KEY的有效期,默认这是0,也就是说永远不过期:

 
 接着输入y并回车确认永久有效。然后会出现下面的提示,要求输入你的真实姓名:

 

 根据提示输入姓名,邮箱和备注后,然后会提示输入用来保护密钥的密码(passphrase),如果不需要密码的话直接回车,如果输入了密码那么一定要记住,这个密码在后面会用到。接下来系统会要求你输入一些随机字符,在键盘的字母和符号上乱按就可以了,不过别按回车

生成成功以后会出现信息:

public and secret key created and signed

要查看现有的公钥,输入:

gpg --list-keys
输出的格式是这个样子的:
pub 2048R/8743ASD9 2013-11-12
uid                 姓名 (备注) <邮箱>
sub 2048R/874234DA 2013-11-12
pub代表的是公钥。旁边2048R代表生成的位数,斜杠后面的字符串就是这个key的ID。   类似地,查看私钥,输入:
gpg --list-secret-keys
  而输出格式也类似:
sec 2048R/8743ASD9 2013-11-12
uid                 姓名 (备注) <邮箱>
sub 2048R/874234DA 2013-11-12
  为了保险起见,最好备份私钥:
gpg --export -a 私钥ID > private_key.asc
  这样密钥就保存起来了。以后要重新导入的话只需要:
gpg --import private_key.asc
  2. 生成了key以后,按照Sonatype的要求,我们需要把公钥上传到服务器上。输入:
gpg --keyserver hkp://pool.sks-keyservers.net --send-keys 公钥ID
  这个服务器地址是Sonatype规定的,因此不需要修改。   3. 下一步,就要像Sonatype提出申请了。首先,要到 这里申请他们的Jira帐号。获得帐号以后,到 这里提交一个申请ticket。 Project要选 Support - Open Source Project Repository HostingIssue TypeNew Project。 再次提醒:groupId的写法非常重要,要么使用自己拥有的域名。要么使用项目托管的子域名,例如com.github.username。为了节省时间,如果使用的是自己拥有的域名,那么可以在description里写清楚,否则客服有可能会问,这样就一个来回就需要一个工作日了。   等客服帮你创建好了仓库,会把ticket改成Fixed并在上面加注释。    3. 修改settings.xml文件。这里主要是添加Sonatype的帐号信息,以便发布的时候使用。
<server>
        <id>portlettester-releases</id>
        <username>xxx</username>
        <password>xxx</password>
 </server>
  这里的id要和pom.xml文件里面<distributionManagement>的repository id对应,用户名和密码则是Sonatype的Jira帐号和密码。   上面这些都准备好以后,在下一篇里我们就要进入发布的正式流程了。请参阅: 上传利用GitHub管理的软件到Maven Central Repository之三

猜你喜欢

转载自drug.iteye.com/blog/1979777