“-e”是什么意思。在 requirements.txt 在 aws cdk 中?

What is the meaning of "-e ." in requirements.txt in aws cdk?

我正在关注此 AWS CDK python getting started tutorial 以了解如何将 AWS CDK 与 python 结合使用。

很好奇requirements.txt文件中-e .的含义,是AWS CDK生成的。这是什么意思?

来自 pip install --help 的文档说 -e, --editable <path/url> Install a project in editable mode (i.e. setuptools "develop mode") from a local project path or a VCS url.

我不认为 requirements.txt 中的 -e 意味着 --editable。它必须代表不同的东西。

我在 https://pip.pypa.io/en/stable/user_guide/#requirements-files 中找不到关于 -e . in requirements.txt 的任何解释。

-e .requirements.txt文件中是什么意思?

document 表示

requirements.txt—This file is used by pip to install all of the dependencies for your application. In this case, it contains only -e . This tells pip to install the requirements specified in setup.py. It also tells pip to run

因此它告诉 pip 安装 setup.py 中指定的要求。

Python 应用程序通常有一个 requirements.txt 文件和一个 setup.py 文件。

requirements.txt 是一个纯文本文件,其中列出了 python 包要求。

setup.py 是一个 python 脚本,它使用 setuptools 来定义一个包。 setup.py 还包含要安装的依赖项列表以及有关包的所有其他元数据。

如果您在两个地方都定义了您的依赖项,那么这是一种冗余。 -e . 是解决这个问题的方法。您可以只在 setup.py 中单独定义依赖项,然后创建 requirements.txt 文件,其中只有 -e .

您现在可以使用 pip install -r requirements.txt 而无需在需求文件中再次定义所有依赖项。 setup.py 中的所有包都是自动安装的,setup.py 成为您要安装的依赖项的唯一来源。