我试图将签名的jar包含到我的maven项目中,并通过maven安装插件将其安装后,由于校验和验证失败,由maven阴影插件创建的uberjar无法启动。在网上进行了一些挖掘之后,阴影插件似乎提取了签名的jar的内容并重新打包,从而破坏了校验和。
带阴影的插件的文档似乎大部分都处于脱机状态,但是没有人知道是否有可能防止提取行为并获得单个jar?或者,如果有更好的方法来生成一个罐子,我将不知所措。
我最终使用的解决方案是executable-packer-maven-plugin
。这使我可以在自己的罐子中捆绑充气弹跳子罐子。
<plugin>
<groupId>de.ntcomputer</groupId>
<artifactId>executable-packer-maven-plugin</artifactId>
<version>1.0.1</version>
<configuration>
<mainClass>com.rescale.app.RescaleClientApp</mainClass>
</configuration>
<executions>
<execution>
<goals>
<goal>pack-executable-jar</goal>
</goals>
</execution>
</executions>
</plugin>