任务':signMavenJavaPublication'的执行失败。 > java.lang.NullPointerException(无错误消息)

时间:2018-10-24 21:07:36

标签: java maven gradle publish signing

我正在尝试使用Gradle Signing插件对Java构件进行签名。在解决“未配置签名者”错误很困难之后,我遇到了另一个问题。任务+0000string id= HttpContext.Request.Query["Id"].ToString(); if (id==nll) { //do any thing here } 失败,我不确定为什么。我已经删除了项目文件夹中的signMavenJavaPublication文件夹,对其进行了清理和重复重建,但均未成功。

这是NullPointerException文件:

.gradle

这是堆栈跟踪:

build.gradle

2 个答案:

答案 0 :(得分:0)

您看到了吗

Caused by: java.lang.NullPointerException
        at org.bouncycastle.openpgp.operator.bc.BcPGPKeyConverter.getPrivateKey

getPrivateKey() converts a private key from one type to another。如果没有PrivKey,则可以理解NPE。

您是否按照The Signing Plugin中所述定义了它?看到那里:

  

请注意,这三个属性中的任何一个值都为null会导致异常。

答案 1 :(得分:0)

由于Gerold Broser的帮助,我找出了答案,指出了getPrivateKey是问题所在。原来,我使用的是私钥的密钥ID,而不是here所示的签名密钥。

要获取密钥ID,我必须使用this post中所述的gpg --list-keys --keyid-format short。将signing.keyId设置为签名密钥的最后八个字符后,NPE错误就消失了!