怎么在MacOS上使用sbt发布代码到Maven中央仓库
在项目中集成sonatype
这一部分不是本篇文章的重点,在项目集成sonatype可参照https://github.com/xerial/sbt-sonatype配置
上传代码
1. 安装gpg并生成密钥
brew install gpg
gpg --gen-key
# 输入用户名,邮箱和密码
gpg --list-key
pub rsa2048 2019-01-27 [SC] [expires: 2021-01-26]
D6162823663F3068D5DFE6C83801060B9E7DD1C8
uid [ultimate] rickyhuo <huochen1994@163.com>
sub rsa2048 2019-01-27 [E] [expires: 2021-01-26]
pub rsa2048 2019-01-27 [SC] [expires: 2021-01-26]
A883183F2589B29407D6ED8F0938FCCC4B3142A9
uid [ultimate] rickyhuo <huochen1994@163.com>
sub rsa2048 2019-01-27 [E] [expires: 2021-01-26]
2. 将公钥发布到 PGP 密钥服务器
gpg --keyserver hkp://pool.sks-keyservers.net --recv-keys D6162823663F3068D5DFE6C83801060B9E7DD1C8
gpg --keyserver hkp://keyserver.ubuntu.com --send-keys D6162823663F3068D5DFE6C83801060B9E7DD1C8
3. 在本地生成自己的密钥文件secring.asc
gpg -a --export-secret-keys D6162823663F3068D5DFE6C83801060B9E7DD1C8 > ~/.sbt/gpg/secring.asc
4. 本地新建 sonatype.sbt
在使用的对应版本的sbt下新建 sonatype.sbt
,输入 oss.sonatype.org
登陆的用户名和密码
touch ~/.sbt/0.13/sonatype.sbt
credentials +=Credentials("Sonatype Nexus Repository Manager",
"oss.sonatype.org",
"Sonatype Username",
"Sonatype Passwd")
5. 上传代码到sonatype
sbt publishSigned
上传过程中,会读取secring.asc
文件内容,如果找不到文件,参考第3步在指定路径生成密钥文件
发布代码
- 登陆oss.sonatype.org
- 在Staging Repositories找到刚才上传的项目
- 点击
Close
- 待系统确认无误后点击
Release
- 一段时间之后,就可以在http://mvnrepository.com/搜索到你的项目了