当我试图用PDFBox读取PDF文件时,在PDDocument类上出现NoClassDefFound错误。以下是我得到的错误:
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/pdfbox/pdmodel/PDDocument
at readpdf.ReadPDF.main(ReadPDF.java:27)
Caused by: java.lang.ClassNotFoundException: org.apache.pdfbox.pdmodel.PDDocument
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
... 1 more
以下是生成错误的代码:
```
try (PDDocument document = PDDocument.load(new File(pdfFile))) {
PDFTextStripper textStripper = new PDFTextStripper();
// Get total page count of the PDF document
int numberOfPages = document.getNumberOfPages();
//set the first page to be extracted
textStripper.setStartPage(1);
// set the last page to be extracted
textStripper.setEndPage(numberOfPages);
String text = textStripper.getText(document);
System.out.println(text);
}
```
以下是我的进口商品,以防它们可能成为问题:
```
import java.io.File;
import java.io.IOException;
import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.text.PDFTextStripper;
```
编辑:这是我用来从windows命令窗口运行程序的命令-
问题是图书馆不见了。出于某种原因,在我构建项目时,Netbeans 11正在创建一个库属性文件和一个名为copy libs的目录,但没有将libs复制到该目录,也没有在dist目录中创建lib目录。我试图找到正确的配置,但没有成功。我最终下载了NetBeans的第12版,从头开始重新创建了这个项目,问题就消失了。现在,当我构建项目时,我的库被复制到lib目录中,不再出现错误。