如何使用poetry安装项目子模块的依赖并同步至根配置文件
子模块依赖同步到主项目Poetry配置的操作方案
核心实现逻辑是将子模块作为本地路径依赖添加到主项目的Poetry配置中,Poetry会自动读取子模块内的依赖声明,合并到主项目的配置与锁定文件中。
操作步骤
- 在主项目根目录下执行如下命令,添加子模块为依赖:
若处于开发场景,需要子模块代码修改后实时生效,可添加可编辑参数:poetry add ./path/to/submodule/from/rootpoetry add --editable ./path/to/submodule/from/root - 命令执行完成后,Poetry会自动完成三项操作:
- 读取子模块
pyproject.toml中声明的全部依赖规则 - 将子模块及其依赖的规则合并写入主项目根目录的
pyproject.toml - 重新解析所有依赖的兼容版本,更新主项目根目录的
poetry.lock,同时完成所有依赖的安装
- 读取子模块
后续维护说明
- 若子模块的
pyproject.toml后续有依赖更新,只需在主项目根目录执行poetry update my-submodule即可将最新依赖同步到主项目配置 - 若子模块依赖与主项目现有依赖存在版本冲突,Poetry会直接抛出冲突提示,手动调整对应依赖的版本规则后重新执行命令即可解决
内容的提问来源于stack exchange,提问作者some_programmer
相关产品推荐
相关产品推荐

