gradle签名插件需要secring.gpg密钥环文件,根据文档:https://docs.gradle.org/current/userguide/signing_plugin.html
但是自从gpg 2.1版以后,secring.gpg不再存在了。 https://www.gnupg.org/faq/whats-new-in-2.1.html
是否有可能使用gradle的签名插件gpg> = 2.1?
答案 0 :(得分:7)
我刚遇到同样的问题,并通过执行以下终端命令手动创建secring.gpg文件来解决它:
gpg --keyring secring.gpg --export-secret-key XXXXXXXX > secring.gpg
您必须将XXXXXXXX替换为您要使用的密钥的ID。您可以使用命令gpg --list-key
列出所有可用密钥。
编辑:我忘了提及我正在使用Linux。
答案 1 :(得分:3)
我也面临同样的问题,我无法用gpg --export-secret-key
来解决这个问题。
gpg:警告:没有导出
实际上我的gpg版本是1.4.xx(gpg --version
),还有另一个版本: gpg2 。
所以试试这个:
gpg2 --export-secret-key XXXXXXXX > secring.gpg
答案 2 :(得分:0)
对于从2017年起从Gradle 4.5开始达到此问题的人们,完全支持使用GnuPG 2(和gpg-agent)。来自签名插件documentation:
signing {
useGpgCmd()
sign configurations.archives
}
此外,必须(至少)定义signing.gnupg.keyName
(最有可能在~/.gradle/gradle.properties
中定义)。
请注意,已定义键(signing.gnupg.keyName
),键存储(signing.gnupg.homeDir
),密码(signing.gnupg.passphrase
)等的属性与以前的Gradle版本中使用的属性不同(不仅在signing.gnupg.*
中,而且在signing.*
中。