微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

故障安全错误:使用阴影插件时,“清单主要属性的签名文件摘要无效”

如何解决故障安全错误:使用阴影插件时,“清单主要属性的签名文件摘要无效”

在maven中使用shade-plugin并稍后尝试使用failsafe-plugin运行集成测试时,在将要运行failsafe时出现以下错误,导致我的集成测试被跳过:

[ERROR] Invalid signature file digest for Manifest main attributes

错误似乎是由依赖项中的签名jar引起的。 This answer建议使用依赖插件来过滤签名,但是它似乎对我不起作用。阴影插件只是解压缩了所有依赖项,并没有解决问题。我该如何工作?

解决方法

过滤掉签名似乎是正确的方法,但是可以(也许应该)直接在阴影插件中完成,而无需任何其他插件。这是implicitly documented on shade-plugins website,其中讨论了工件过滤器。我确保我的阴影插件执行包括以下过滤器,并且可以正常工作:

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-shade-plugin</artifactId>
  <version>3.2.0</version>
  <configuration>
    <createDependencyReducedPom>false</createDependencyReducedPom>
  </configuration>
  <executions>
    <execution>
      <phase>package</phase>
      <goals>
        <goal>shade</goal>
      </goals>
      <configuration>
        <filters>
          <filter>
            <artifact>*:*</artifact>
            <excludes>
              <exclude>META-INF/*.SF</exclude>
              <exclude>META-INF/*.DSA</exclude>
              <exclude>META-INF/*.RSA</exclude>
            </excludes>
          </filter>
        </filters>
      </configuration>
    </execution>
  </executions>
</plugin>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。