1

mvn test 失败

 [INFO]
    [INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ project-name ---
    [INFO]
    [INFO] --- scalatest-maven-plugin:1.0:test (test) @ project-name ---
    Discovery starting.
    *** RUN ABORTED ***
      java.lang.SecurityException: Invalid signature file digest for Manifest main attributes
      at sun.security.util.SignatureFileVerifier.processImpl(SignatureFileVerifier.java:330)
      at sun.security.util.SignatureFileVerifier.process(SignatureFileVerifier.java:263)
      at java.util.jar.JarVerifier.processEntry(JarVerifier.java:318)
      at java.util.jar.JarVerifier.update(JarVerifier.java:230)
      at java.util.jar.JarFile.initializeVerifier(JarFile.java:383)
      at java.util.jar.JarFile.ensureInitialization(JarFile.java:617)
      at java.util.jar.JavaUtilJarAccessImpl.ensureInitialization(JavaUtilJarAccessImpl.java:69)
      at sun.misc.URLClassPath$JarLoader$2.getManifest(URLClassPath.java:991)
      at java.net.URLClassLoader.defineClass(URLClassLoader.java:451)
      at java.net.URLClassLoader.access$100(URLClassLoader.java:74)

我在 Apache 邮件列表中的 sof 和中搜索了很多答案,所有这些都是 maven shade 插件的问题,人们在 mvn package 或 mvn install 阶段遇到了问题。但就我而言,我没有使用 maven shade 插件,只使用以下插件:maven-scala-plugin、scalatest-maven-plugin。而且我只在“测试”阶段遇到这个问题。

4

1 回答 1

0

终于找到问题了,这个模块有一个依赖,里面有shade插件,在那个模块的pom中过滤掉如下解决了这个问题:

<filters>
                        <filter>
                            <artifact>*:*</artifact>
                            <excludes>
                                <exclude>META-INF/*.SF</exclude>
                                <exclude>META-INF/*.DSA</exclude>
                                <exclude>META-INF/*.RSA</exclude>
                            </excludes>
                        </filter>
                    </filters>
于 2020-08-26T09:19:49.000 回答