当前位置: 首页 > 知识库问答 >
问题:

带有两个BouncyCastle JAR的java.lang.NoClassDeffoundError

林华皓
2023-03-14

我在我的项目中包含了2个BC JAR:bcpkix-jdk15on-1.47.jar和bcprov-jdk15on-157.jar。

作为代码中的第一行,我添加了:

Security.addProvider(new BouncyCastleProvider());  

行发生异常:

JcaPKCS10CertificationRequest csrNew = new JcaPKCS10CertificationRequest(request);

By the way it is imported: import org.bouncycastle.pkcs.jcajce.JcaPKCS10CertificationRequest; 

有没有什么方法可以让我定期包括这两个BouncyCastle罐子?

共有1个答案

万俟亦
2023-03-14

org/bouncycastle/jcajce/jcajcehelper出错,而不是org.bouncycastle.pkcs.jcajce.jcapkcs10certificationrequest出错。

问题:您正在使用的jar文件的版本。bcpkix-jdk15on-1.47是1.47版,而bcprov-jdk15on-1.57是1.57版。

org/bouncycastle/jcajce/jcajcehelperbcprov-jdk15on-1.47中可用,但在bcprov-jdk15on-1.57中不可用。在1.57版本中,它以org/bouncycastle/jcajce/util/jcajcehelper的形式提供。

Netbeans无法检测该问题,因为该问题仅在运行代码时才会出现。它将不会在编译时被捕获。

解决方法:是的,你可以同时使用两个罐子。用同样的版本就行了。使用bcpkix-jdk15on-1.57或使用bcprov-jdk15on-1.47

 类似资料:
  • 我有一个由这个JSON描述的node.js包: 文件包含以下代码: 而包含基于YARGS的命令行工具的代码。 现在,我想在这个包中添加第二个命令,但我不知道应该如何继续,因为只能有一个“main”。 有谁有例子吗?

  • 问题内容: 我正在将Jenkins管道插件与Jenkinsfile一起使用。 在一个名为vms.git的存储库中,我有Jenkinsfile及其构建的应用程序。 我还有一个名为deploy.git的存储库,其中包含我想用于在vms.git中部署应用程序的脚本。 目前,我的Jenkinsfile看起来像这样 并且我在作业配置中定义了vms.git存储库。 因此,我想做的是检出两个存储库,然后使用vm

  • 我正在使用Jenkins管道插件和Jenkins文件。 在一个名为vms的存储库中。git,我有Jenkinsfile和它构建的应用程序。 我有另一个名为deploy的存储库。git,其中包含我想用于在VM中部署应用程序的脚本。吉特。 目前我的Jenkinsfile就是这样的 我正在作业配置中定义vms.git存储库。 所以我想做的是检查这两个存储库,然后在vms中使用Jenkinsfile。gi

  • 问题内容: 我有这样的HTML结构: 当前,当我单击带有ID的时,两个函数都被触发,但是我希望那个函数被触发。我怎样才能做到这一点? 问题答案: 您需要做的就是停止事件传播/冒泡。 此代码将帮助您: 如果您的和函数如下所示,则单击DIV 时您只会进入控制台。如果没有,您将在控制台输出窗口中跟随。