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

使用Pipenv构建Python模块Wheel时遭遇toml模块缺失错误

解决Pipenv构建Wheel时ModuleNotFoundError: No module named 'toml'的问题

问题原因

python -m build命令会创建完全隔离的临时构建环境,这个环境不会自动继承你Pipfile中声明的依赖。你的setup.py执行时需要导入toml模块,但该隔离环境默认只安装了setuptools和wheel,未包含toml,因此触发模块找不到的错误。

解决方案

你需要在项目的pyproject.toml文件中声明构建阶段依赖,让build工具在隔离环境中自动安装toml。如果项目还没有pyproject.toml,直接创建一个;如果已有,修改对应部分:

[build-system]
requires = ["setuptools >= 40.8.0", "wheel", "toml >= 0.10.0"]
build-backend = "setuptools.build_meta"

验证步骤

  1. 保存pyproject.toml后,重新执行构建命令:
pipenv run python -m build --wheel
  1. 此时build工具会在隔离环境中自动安装toml,setup.py即可正常导入并执行。

补充说明

Pipfile仅管理项目运行和开发阶段的依赖,而构建阶段的依赖需通过pyproject.toml的build-system.requires声明,这是PEP 517/518规定的现代Python打包标准流程。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 15:00:14