Rog*_*cia 5 java pdf spring itext maven
我正在开发一个小工具来为PDF加水印,它适用于一些PDF,而其他一些则崩溃。
我正在使用iText库和 bouncycastle(依赖项)
pom.xml:
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>itextpdf</artifactId>
<version>5.5.6</version>
</dependency>
<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcprov-jdk15on</artifactId>
<version>1.49</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
它在这一行(代码的第一行)崩溃:
PdfReader reader = new PdfReader(src);
Run Code Online (Sandbox Code Playgroud)
使用以下堆栈跟踪:
Exception in thread "main" com.itextpdf.text.exceptions.InvalidPdfException: class "org.bouncycastle.asn1.ASN1Primitive"'s signer information does not match signer information of other classes in the same package
at com.itextpdf.text.pdf.PdfReader.readPdf(PdfReader.java:727)
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)
... <from here it points to my code>
Run Code Online (Sandbox Code Playgroud)
我已经做了一些谷歌搜索,有些人说可能问题是我在某处复制了这个bouncycastle lib。
这是在使用Maven构建的Spring应用程序中。那么,这真的是图书馆的问题吗?
我正在使用JDK 1.8。
我试过的:
但是行为完全相同,一些 PDF有效(总是),而另一些则不(曾经)。
您是否曾在使用iText库时遇到过与此类似的问题?
是问题 的PDF格式文件,使代码崩溃在我的项目,而不是?
我完全被困在这里,所以任何帮助/提示将不胜感激。提前致谢。
感谢Bruno Lowagie 的评论以及链接的问题和mkl提示,我发现了问题。
在我的构建路径中,有两个 org.bouncycastle 库,一个是我通过 Maven 添加的( bcprov-jdk15on.jar),另一个是 Pivotal TC Server 使用的( com.springsource.org.bouncycastle.jce-1.46.0.jar)。
我已经删除了Pivotal TC Server bouncycastle jar ,错误已经消失。
使用 STS,我无法删除它,因此我在文件系统上找到了它,并将其从 Pivotal TC 预期的文件夹中移出。然后,该库在 STS 消失了。
为了以防万一,我没有删除它,只是移动到另一个目录。如果从现在开始我对 Pivotal TC 有问题,我会更新我的答案。
| 归档时间: |
|
| 查看次数: |
6241 次 |
| 最近记录: |