我已经看过How to select the GnuPG key that the maven-gpg-plugin uses to sign artifacts?以及更多问题,但我仍然无法使这个maven插件正常工作。
我用gpg创建了2个键,现在我可以看到它们:
$ gpg --list-secret-keys --keyid-format LONG
-----------------------------
sec rsa2048/835CAF6D1B0569EB 2017-12-12 [SC]
uid [ultimate] User 1 <email1@gmail.com>
ssb rsa2048/7604C74FE62682EF 2017-12-12 [E]
sec rsa2048/1330DF9E7C6D864E 2017-12-12 [SC]
uid [ultimate] User 2 <email2@gmail.com>
ssb rsa2048/09982A57EC4B5F18 2017-12-12 [E]
我的pom.xml配置如下:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>1.6</version>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
<configuration>
<keyname>1330DF9E7C6D864E</keyname>
<passphrase>supersecurepassword</passphrase>
</configuration>
</execution>
</executions>
</plugin>
但当我做“mvn package gpg:sign”时,它总是使用密钥835CAF6D1B0569EB 站在https://maven.apache.org/plugins/maven-gpg-plugin/sign-mojo.html,键名应发送给gpg -u / - local-user,但它似乎不起作用。 我也试过使用“gpgArguments”和“ - default-key”,我试过“0x1330DF9E7C6D864E”和“0x1330DF9E7C6D864E!” (站在文档中应该强制关键)。 怎么了?
由于
答案 0 :(得分:1)
添加gpg
前缀。
<gpg.keyname>1330DF9E7C6D864E</gpg.keyname>
<gpg.passphrase>supersecurepassword</gpg.passphrase>
答案 1 :(得分:0)
您是否尝试仅使用签名密钥的最后 8 个字符 (7C6D864E
)?还试图附加到开头 0x
(0x7C6D864E
)?
另外,尝试检查签名密钥
gpg --list-signatures --keyid-format 0xshort
gpg --list-signatures --keyid-format 0xlong
gpg --list-signatures
gpg --list-signatures --keyid-format short