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

Amazon SageMaker运行tabula报JavaNotFoundError该怎么安装Java?

解决Amazon SageMaker中tabula依赖Java缺失的方案

报错原因:tabula-py底层依赖Java运行环境,SageMaker默认Notebook实例未预装Java,因此执行read_pdf方法时触发JavaNotFoundError。

安装配置Java的操作步骤

方式一:直接在Notebook单元格中执行安装(推荐,无需切换终端)

  • 新建空白单元格,执行以下Shell命令:
!sudo apt update && sudo apt install -y openjdk-11-jre-headless

安装选择无界面版本的OpenJDK 11,资源占用低,和tabula-py兼容性最优,全程无需人工交互,等待几十秒即可完成。

  • 验证Java安装结果:
!java -version

正常返回如下格式内容即代表安装成功:

openjdk version "11.0.x"
OpenJDK Runtime Environment (build 11.0.x+xxx)
OpenJDK 64-Bit Server VM (build 11.0.x+xxx, mixed mode, sharing)

方式二:在SageMaker终端执行安装

如果偏好终端操作,点击Notebook界面右上角的「New」-「Terminal」进入终端,依次执行以下命令即可:

sudo apt update
sudo apt install -y openjdk-11-jre-headless

测试tabula运行

Java安装完成后无需重启Notebook内核,直接运行原有代码即可正常读取PDF内容:

import tabula
pdf_path = "https://github.com/chezou/tabula-py/raw/master/tests/resources/data.pdf"
dfs = tabula.read_pdf(pdf_path, stream=True)
# 输出第一张表的内容验证
print(dfs[0])

注意事项

  • SageMaker默认Notebook实例重启后,系统盘的非持久化修改会被重置,再次使用需要重新执行安装命令。如果需要开机自动配置Java,可以将安装命令写入实例的生命周期配置启动脚本中。
  • 优先选择OpenJDK 8或11版本,避免使用过高版本Java导致tabula运行异常。

内容的提问来源于stack exchange,提问作者Matthew Metros

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 07:48:02