线程中的Java Swing Read PDF返回异常;AWT-EventQueue-0“;java.lang.NoClassDefFoundError:org/bouncycastle/asn1/ASN1OctetString

线程中的Java Swing Read PDF返回异常;AWT-EventQueue-0“;java.lang.NoClassDefFoundError:org/bouncycastle/asn1/ASN1OctetString,java,swing,itext,Java,Swing,Itext,我正在创建一个基于桌面的应用程序,在这里我可以阅读PDF并在预览页面中显示内容。 我正在使用itext和icepdf库执行此任务,但在阅读pdf文件时使用以下代码 PdfReader reader = new PdfReader(pdfFilePath); 它正在返回异常以下 Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: org/bouncycastle/asn1/ASN1Oct

我正在创建一个基于桌面的应用程序,在这里我可以阅读PDF并在预览页面中显示内容。 我正在使用itext和icepdf库执行此任务,但在阅读pdf文件时使用以下代码

PdfReader reader = new PdfReader(pdfFilePath);
它正在返回异常以下

Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: org/bouncycastle/asn1/ASN1OctetString
    at com.itextpdf.text.pdf.PdfEncryption.<init>(PdfEncryption.java:149)
    at com.itextpdf.text.pdf.PdfReader.readDecryptedDocObj(PdfReader.java:1013)
    at com.itextpdf.text.pdf.PdfReader.readDocObj(PdfReader.java:1411)
    at com.itextpdf.text.pdf.PdfReader.readPdf(PdfReader.java:721)
    at com.itextpdf.text.pdf.PdfReader.<init>(PdfReader.java:181)
    at com.itextpdf.text.pdf.PdfReader.<init>(PdfReader.java:219)
    at com.itextpdf.text.pdf.PdfReader.<init>(PdfReader.java:207)
    at com.itextpdf.text.pdf.PdfReader.<init>(PdfReader.java:197)
    at com.pdf.common.services.PDFMain.createLeftPanel(PDFMain.java:316)
    at com.pdf.common.services.PDFMain.<init>(PDFMain.java:444)
    at com.pdf.common.services.PDFMain$1.run(PDFMain.java:155)
    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:733)
    at java.awt.EventQueue.access$200(EventQueue.java:103)
    at java.awt.EventQueue$3.run(EventQueue.java:694)
    at java.awt.EventQueue$3.run(EventQueue.java:692)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:703)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
Caused by: java.lang.ClassNotFoundException: org.bouncycastle.asn1.ASN1OctetString
    at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
    ... 25 more
线程“AWT-EventQueue-0”java.lang.NoClassDefFoundError中的异常:org/bouncycastle/asn1/ASN1OctetString 请访问com.itextpdf.text.pdf.PdfEncryption.(PdfEncryption.java:149) 在com.itextpdf.text.pdf.PdfReader.readdecrypteddocbj上(PdfReader.java:1013) 请访问com.itextpdf.text.pdf.PdfReader.readDocObj(PdfReader.java:1411) 请访问com.itextpdf.text.pdf.PdfReader.readPdf(PdfReader.java:721) 请访问com.itextpdf.text.pdf.PdfReader(PdfReader.java:181) 请访问com.itextpdf.text.pdf.PdfReader(PdfReader.java:219) 请访问com.itextpdf.text.pdf.PdfReader。(PdfReader.java:207) 请访问com.itextpdf.text.pdf.PdfReader(PdfReader.java:197) 在com.pdf.common.services.PDFMain.createLeftPanel上(PDFMain.java:316) www.com.pdf.common.services.PDFMain.(PDFMain.java:444) com.pdf.common.services.PDFMain$1.run(PDFMain.java:155) 在java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251)中 位于java.awt.EventQueue.dispatchEventImpl(EventQueue.java:733) 在java.awt.EventQueue.access$200(EventQueue.java:103) 位于java.awt.EventQueue$3.run(EventQueue.java:694) 在java.awt.EventQueue$3.run(EventQueue.java:692) 位于java.security.AccessController.doPrivileged(本机方法) 位于java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76) 位于java.awt.EventQueue.dispatchEvent(EventQueue.java:703) 位于java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242) 在java.awt.EventDispatchThread.PumpeEventsforFilter(EventDispatchThread.java:161) 位于java.awt.EventDispatchThread.PumpeEventsforHierarchy(EventDispatchThread.java:150) 位于java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146) 位于java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138) 在java.awt.EventDispatchThread.run(EventDispatchThread.java:91) 原因:java.lang.ClassNotFoundException:org.bouncycastle.asn1.ASN1OctetString 在java.net.URLClassLoader$1.run(URLClassLoader.java:366) 在java.net.URLClassLoader$1.run(URLClassLoader.java:355) 位于java.security.AccessController.doPrivileged(本机方法) 位于java.net.URLClassLoader.findClass(URLClassLoader.java:354) 位于java.lang.ClassLoader.loadClass(ClassLoader.java:425) 位于sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) 位于java.lang.ClassLoader.loadClass(ClassLoader.java:358) ... 25多 根据谷歌搜索,我尝试了以下jar文件


但每次我遇到同样的错误时,我都使用下面版本的库来解决我的问题

iText 5.5.13,
弹跳舱1.49

类路径上有相同库的不同版本。这通常不起作用,特别是对于BouncyCastle。确定您需要的版本并只将其放在类路径中。对于iText 5.5.13:BouncyCastle 1.49,正如在
pom.xml
@mkl中所看到的,实际上我没有将所有版本用于同一个库。当我当时使用较低版本的itext库(5.5.0)时,我使用较低版本的bc*******库(1.49),当我使用最新版本的itext库(5.5.13.1)时,我使用最新版本的bc*******库(1.66)@AmedeeVanGasse好的,让我用您提供的版本进行测试library@AmedeeVanGasse非常感谢你。。它现在工作正常