class "org.bouncycastle.cms.CMSProcessable" 的签名者信息与其他 classes 的签名者信息不匹配

class "org.bouncycastle.cms.CMSProcessable"'s signer information does not match signer information of other classes

我正在使用 jpasskit 创建 ios 通行证并尝试使用 bouncycastle 签署通行证。我在使用 jpasskit 时遇到了一些问题:

 java.lang.SecurityException: class "org.bouncycastle.cms.CMSProcessable"'s signer information does not match signer information of other classes in the same package

POM 详细信息:

<dependency>
    <groupId>de.brendamour</groupId>
    <artifactId>jpasskit</artifactId>
    <version>0.0.9</version>   

       <exclusions>
                <exclusion>  
          <groupId>org.bouncycastle</groupId>
          <artifactId>bctsp-jdk14</artifactId>
        </exclusion>

                <exclusion>  
          <groupId>org.bouncycastle</groupId>
          <artifactId>bcpkix-jdk14</artifactId>
        </exclusion>

                <exclusion>  
          <groupId>org.bouncycastle</groupId>
          <artifactId>bcprov-jdk14</artifactId>
        </exclusion>

          </exclusions> 

      </dependency>

请帮忙。

当属于同一个包的 类 从不同的 JAR 文件加载时会发生这种情况,我遇到了同样的问题,在我的情况下,不同的 BouncyCastle 版本被我使用的不同库作为依赖项包含在内。
我看到您的 POM 中已经有一些排除项,请尝试排除所有 conflicting/overlapping 版本。在你的依赖树中寻找 bcmail-jdk{version}-{version}.jar, bcprov-jdk{version}-{ version}.jar 等等...并且只保留其中的一个版本。

我的 jars 仍然没有从 metadata.My 中删除问题再次解决 now.Thanks!!.D:\greenlot_45_workspace.metadata.plugins\org.eclipse.wst.server .core\tmp1\wtpwebapps\Sky30Web\WEB-INF\lib