You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java项目提取PDF报错package org.apache.pdfbox does not exist解决

Java项目PDFBox依赖报错排查方案

问题现象

开发Java项目实现PDF提取功能时触发编译错误,核心报错提示:package org.apache.pdfbox does not exist,PDF提取功能无法正常运行。
项目中涉及PDFBox的导入代码如下:

import org.apache.pdfbox.PDFReader
import org.apache.pdfbox.*;
import org.apache.pdfbox.cos.COSDocument;
import org.apache.pdfbox.pdmodel.PDDocument

相关报错参考截图:
编译报错截图
已尝试添加2.0.26版本的fontbox、pdfbox依赖,问题未解决,运行时异常参考截图:
运行异常截图

修复步骤

  • 补全依赖配置
    2.0.26版本的PDFBox不能只引入pdfbox和fontbox两个包,还需要配套引入commons-logging依赖,以Maven配置为例,正确依赖块如下:
    <dependency>
        <groupId>org.apache.pdfbox</groupId>
        <artifactId>pdfbox</artifactId>
        <version>2.0.26</version>
    </dependency>
    <dependency>
        <groupId>org.apache.pdfbox</groupId>
        <artifactId>fontbox</artifactId>
        <version>2.0.26</version>
    </dependency>
    <dependency>
        <groupId>commons-logging</groupId>
        <artifactId>commons-logging</artifactId>
        <version>1.2</version>
    </dependency>
    
    配置完成后必须重新加载项目依赖:IDEA环境右键pom.xml选择Maven-Reload project;Eclipse环境右键项目选择Maven-Update Project;如果是手动导入jar包的项目,需要确认jar包已被加入项目构建路径,不能仅将jar文件放在项目目录下不关联classpath。
  • 修正错误的导入语句
    当前导入代码存在两处明确问题:
    1. org.apache.pdfbox.PDFReader是PDFBox 1.x版本的类,在2.0.x版本中已被移除,这行导入直接删除即可
    2. 导入语句属于Java代码,末尾必须加分号,现有代码中import org.apache.pdfbox.PDFReader、import org.apache.pdfbox.pdmodel.PDDocument两行末尾缺失分号,也会触发编译失败
      修正后的基础导入参考:
    import org.apache.pdfbox.cos.COSDocument;
    import org.apache.pdfbox.pdmodel.PDDocument;
    // 后续可按需导入文本提取、页面解析对应的类
    
  • 排查版本冲突
    完成以上两步后如果仍报错,检查项目依赖树,排查是否存在其他组件引入的1.x版本PDFBox依赖造成版本冲突,发现旧版本依赖直接排除即可。

内容的提问来源于stack exchange,提问作者Suntea Purwaningrum

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.01 23:36:17