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

如何在pyproject.toml中为Poetry正确配置main包的额外依赖?

Poetry中pyproject.toml分离包额外依赖的配置方案

问题描述

我是Poetry新手,想在pyproject.toml里分离名为main的包的额外依赖(比如main[extra1]、main[extra2]),让用户可以灵活选择安装哪些额外依赖,请问该怎么配置?

我的尝试

查了Poetry文档后,我尝试用依赖组做测试,配置如下:

[tool.poetry.dependencies]
# 通用依赖
python = "3.10.8"
main = "{version_number}"

[tool.poetry.group.extra1.dependencies]
main[extra1] = "{version_number}"

报错信息

执行poetry install --with extra1或poetry update --with extra1时,出现错误:

Expected '=' after a key in a key/value pair (at line 46, column 13)

解决方法

报错原因是TOML语法规则:当键名包含[]这类特殊字符时,必须用双引号把键包裹起来,否则解析器无法识别。

修正后的完整配置示例:

[tool.poetry.dependencies]
python = "3.10.8"
main = "{version_number}"

# 分离extra1额外依赖
[tool.poetry.group.extra1.dependencies]
"main[extra1]" = "{version_number}"

# 分离extra2额外依赖
[tool.poetry.group.extra2.dependencies]
"main[extra2]" = "{version_number}"

使用说明

  • 安装仅包含通用依赖的版本:poetry install
  • 安装包含extra1额外依赖的版本:poetry install --with extra1
  • 同时安装包含extra1和extra2的版本:poetry install --with extra1,extra2

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 04:56:15