Pdfbox 为什么我无法加载文档?

Pdfbox why can't I load a document?

所以我在使用 PDDocument.load(File) 时无法加载 PDDocument。我尝试卸载并重新安装 PDFBox 的 jar,以查看 PDDocument 对象是否会正确呈现。仍然没有工作,我很不确定为什么。 PDDocument 对象似乎只有它的实例方法,而不是它记录的静态方法。我只有关于 PDDocument.load(file).

的运行时错误 NoSuchMethodError

这是我的代码:

package main;

import java.io.File;
import java.io.IOException;
import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.text.PDFTextStripper;

public class Main {
    public static void main(String[] args) throws IOException {
        File f = new File("C:/Users/user/Desktop/sample/Resume_Michael_Sinclair.pdf");
        PDDocument doc = PDDocument.load(f);
        
        PDFTextStripper tp = new PDFTextStripper();
        System.out.println(tp.getText(doc));
        doc.close();
    }
}
根据我的理解,

pom.xml 是用来呈现 pdfbox 对象的,所以这里是我的 pom.xml 如果有帮助的话:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>Pdfeasy_Editor</groupId>
  <artifactId>Pdfeasy_Editor</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  
  <build>
      <sourceDirectory>src</sourceDirectory>
      <plugins>
         <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.3</version>
            <configuration>
               <source>1.8</source>
               <target>1.8</target>
            </configuration> 
         </plugin>
      </plugins> 
   </build> 
   
   <dependencies>  
      <dependency> 
         <groupId>org.apache.pdfbox</groupId> 
         <artifactId>pdfbox</artifactId> 
         <version>2.0.1</version> 
      </dependency>   
   
      <dependency> 
         <groupId>org.apache.pdfbox</groupId> 
         <artifactId>fontbox</artifactId> 
         <version>2.0.0</version> 
      </dependency>
      
      <dependency>  
         <groupId>org.apache.pdfbox</groupId> 
         <artifactId>jempbox</artifactId> 
         <version>1.8.11</version> 
      </dependency> 
        
      <dependency>
         <groupId>org.apache.pdfbox</groupId> 
         <artifactId>xmpbox</artifactId> 
         <version>2.0.0</version> 
      </dependency> 
     
      <dependency> 
         <groupId>org.apache.pdfbox</groupId> 
         <artifactId>preflight</artifactId> 
         <version>2.0.0</version> 
      </dependency> 
     
      <dependency> 
         <groupId>org.apache.pdfbox</groupId> 
         <artifactId>pdfbox-tools</artifactId> 
         <version>2.0.0</version> 
      </dependency>

   </dependencies>
   
</project>

任何帮助将不胜感激:)。

所以问题是我的 pom.xml 文件有错误的库版本。 PDFBox 3.0.0 对我来说没有完整的功能,所以我将我的库切换到官方版本 2.0.23。将所有版本设置为2.0.23后,例如:

<dependency>
    <groupId>org.apache.pdfbox</groupId>
    <artifactId>pdfbox-tools</artifactId>
    <version>2.0.23</version>
</dependency>

这解决了问题,我发布的初始语法现在可以使用了!感谢@andrewjames 和@mkl