很长时间没有编译自己的组件了,昨天尝试了一下编译,突然暴露出来一个对于我来说很不常见的异常,异常错误如下:
这里说的是我本机的gpg秘钥有问题,但是我这个秘钥是新生成的,不可能存在问题呀。遂,我又在网上一顿的搜索,大部分的答案都是说秘钥过期了,需要编辑或者是新建立一个秘钥。我也都逐个的依次进行尝试,但是不好的结果还是发生了,还是提示无法编译,无法正确的进行签名。已经到这里了,进而尝试使用DEBUG模式,看一看编译的过程是哪里的问题。
看着报错,其实也没有自己想要的答案。回顾回来,其实还是错误的配置引起的。我记得上一次写代码后,安装了Docker。猜测是Docker引起的,不过,也不能卸掉Docker,还是需要使用的。问题的解决转折点在今天早上,我随意的搜索了一下自己的问题,突然发现,出现了与昨天不一样的搜索结果,感觉这是可行的。并且,最终的测试结果也是完全地解决了我的问题。解决的方法也是很简单。
其实,问题发在settings.xml配置文件上,应当需要指定gpg的工作文件夹以及key的名字。配置如下:
<profile>
<id>sign</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<!-- <gpg.executable>gpg</gpg.executable> -->
<gpg.homedir>C:\Users\breakpoint\.gnupg</gpg.homedir>
<gpg.keyname>0DAF64D7275DD9C63E2ACBCE3A187A6865444EC3</gpg.keyname>
<gpg.passphrase>zlg1747896448</gpg.passphrase>
</properties>
</profile>
再次执行打包命令,成功使用gpg签名,效果如下所示:
接下来就可以愉快地写代码了!