如何使用诗歌安装子模块的依赖项?
How to install the dependencies of the submodule using poetry?
我有一个使用子模块 my-submodule
的项目 my-project
。子模块的依赖项不同于 poetry.lock
和 pyproject.toml
文件中的 my-project
。
我已经使用 poetry add
安装了 my-project
所需的依赖项。这些 dep 已安装,并在 my-project
.
的根文件夹中创建了 poetry.lock
和 pyproject.toml
文件
现在,我也想安装子模块的依赖。假设子模块的路径是path/to/submodule/from/root
,我如何安装子模块的依赖项并使这些dep反映在根目录的poetry.lock
和pyproject.toml
文件中?
这里有人问过类似的问题:Manage dependencies of git submodules with poetry,但那里没有提供解决方案。
您可以在父项目的 pyproject.toml
中将子模块声明为 path
依赖项。然后它将子模块视为一个包并将其包含在依赖项 install/resolution 中。声明依赖的时候一定要同时包含develop
属性,如下:
[tool.poetry.dependencies]
my-package = { path = "./path/to/submodule/from/root", develop = true }
Link 到文档:https://python-poetry.org/docs/dependency-specification/#path-dependencies
我有一个使用子模块 my-submodule
的项目 my-project
。子模块的依赖项不同于 poetry.lock
和 pyproject.toml
文件中的 my-project
。
我已经使用 poetry add
安装了 my-project
所需的依赖项。这些 dep 已安装,并在 my-project
.
poetry.lock
和 pyproject.toml
文件
现在,我也想安装子模块的依赖。假设子模块的路径是path/to/submodule/from/root
,我如何安装子模块的依赖项并使这些dep反映在根目录的poetry.lock
和pyproject.toml
文件中?
这里有人问过类似的问题:Manage dependencies of git submodules with poetry,但那里没有提供解决方案。
您可以在父项目的 pyproject.toml
中将子模块声明为 path
依赖项。然后它将子模块视为一个包并将其包含在依赖项 install/resolution 中。声明依赖的时候一定要同时包含develop
属性,如下:
[tool.poetry.dependencies]
my-package = { path = "./path/to/submodule/from/root", develop = true }
Link 到文档:https://python-poetry.org/docs/dependency-specification/#path-dependencies