使用itext 7代码的第一个示例导致在步骤4中出现NoClassDefFoundError。 如果有人能指出错误的来源会有帮助吗?
import com.itextpdf.kernel.pdf.PdfWriter
import com.itextpdf.kernel.pdf.PdfDocument
import com.itextpdf.layout.Document
import com.itextpdf.layout.element.Paragraph
//step 1 - writer
writer = new PdfWriter(new FileOutputStream(DEST))
//step 2 - PDF
pdf = new PdfDocument(writer)
//step 3 - document
document = new Document(pdf)
//step 4 - content
document.add( new Paragraph ( 'Hello World!' ) )
这会产生
java.lang.NoClassDefFoundError: Could not initialize class com.itextpdf.io.font.FontProgramFactory
代码正在Groovy下运行,这就是它稍微稀疏的原因 已加载IO,内核和布局jar。
答案 0 :(得分:2)
您是否观看了有关如何安装iText 7的视频?错误消息告诉您您没有包含IO jar。我的假设是你已经将内核和布局jar添加到了你的CLASSPATH,但你忽略了添加io jar。
这些是Jump-start教程的Before we start: installing iText 7部分中的一些记录的依赖项:
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>kernel</artifactId>
<version>7.0.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>io</artifactId>
<version>7.0.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>layout</artifactId>
<version>7.0.0</version>
<scope>compile</scope>
</dependency>
正如视频中所解释的那样,io jar是内核jar的依赖。
你写道:
已加载IO,内核和布局jar。
您分享的错误消息告诉我IO jar没有加载。 com.itextpdf.io.font.FontProgramFactory
类存储在此jar中。