【问题标题】:java.lang.SecurityException: signer information does not match signer information of other classes in the same package in PowerMockjava.lang.SecurityException:签名者信息与PowerMock中同一个包中其他类的签名者信息不匹配
【发布时间】:2022-02-08 23:36:42
【问题描述】:
当使用 PowerMockito.mockStatic(Test.class)(其中 Test.class 是已签名 jar 的一部分)时,我收到 SecurityException。
这发生在 java.lang.ClassLoader.checkCerts(ClassLoader.java:898)
无论如何要避免测试中的证书检查。
我正在使用 powermock-mockito 1.6.4 版本。无法弄清楚如何解决此问题。这里有任何帮助。
【问题讨论】:
标签:
java
powermock
powermockito
【解决方案1】:
Powermock lib 1.6.4 版有一个错误,当模拟作为签名 jar 一部分的类时会失败。将 powermock 库升级到 1.6.6 解决了这个问题。
【解决方案2】:
我遇到了类似的问题,但与 powermock 依赖项的细节不同,
“java.lang.SecurityException: 类“”的签名者信息与同包中其他类的签名者信息不匹配”
当我搜索时,几乎所有人都说了同样的话like this link
这意味着您在同一个包中有两个或多个具有不同签名数据的类。通常这意味着这些类来自不同的 JAR,其中一个是有符号的,另一个是无符号的。
我尝试更改依赖版本,但它不起作用。
但是当我将 maven 版本从 3.6.3v 降级为使用 3.0.5v。一切正常。