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

Docker构建Python3.10项目报错:pathlib无法从collections导入Sequence

问题根源
  • 你的Dockerfile使用python:3标签,目前该标签对应最新的Python 3.10+版本,pathlib从Python 3.4开始已经纳入标准库,无需额外安装第三方pathlib包
  • 你依赖的artifactory==0.1.17是老旧版本,强制要求安装第三方pathlib包,而第三方pathlib 1.0.1最高仅支持Python 3.9,在Python 3.10+环境下安装时会因为Sequence导入路径变更报错
可行解决方案

方案1:固定Docker基础镜像为Python 3.9版本(改动最小,最快生效)

修改你的Dockerfile第一行,把FROM python:3替换为FROM python:3.9,不需要改动requirements.txt内容,重新构建即可。该方案适配你当前所有依赖的版本要求,不需要调整依赖组合。

方案2:升级artifactory依赖,移除对第三方pathlib的要求

新版本的artifactory包已经修复了强制依赖第三方pathlib的问题,你可以把requirements.txt里的artifactory==0.1.17替换为更高的兼容版本,比如artifactory==0.1.21,该版本已经不再依赖第三方pathlib,适配Python 3.10+环境。修改后重新构建镜像即可。

方案3:安装依赖时排除pathlib包

如果不想调整artifactory版本也不想降级Python,可以在pip安装命令里添加排除参数,修改Dockerfile中的安装命令为:

RUN pip install --no-cache-dir -r requirements.txt --exclude pathlib

直接忽略artifactory对pathlib的依赖要求,使用Python内置的标准库pathlib即可。

内容的提问来源于stack exchange,提问作者Lucas Rahn

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 09:45:02