Tom*_*lli 4 python pip python-3.x
我已经在 python 中创建了一个包,现在我想将其作为常规包安装。pip3 install .只使用和 和有什么区别pip3 install -e .?
我之所以问,是因为使用 pip3 install 。该软件包虽然已安装,但系统看不到。虽然第二种方式工作正常
该-e标志告诉 pip 以可编辑模式安装:
-e,--editable <path/url>\n Install a project in editable mode (i.e. setuptools "develop mode") from a local project path or a VCS url.\nRun Code Online (Sandbox Code Playgroud)\n\nhttps://manpages.debian.org/stretch/python-pip/pip.1
\n\n那么什么是可编辑模式或setuptools“开发模式”?
\n\n\n\n\n此命令允许您部署项目\xe2\x80\x99s 源,以便在一个或多个可导入的\xe2\x80\x9cstaging 区域\xe2\x80\x9d 中使用。此部署的完成方式是,对项目源的更改可立即在暂存区域中可用,而无需在每次更改后运行构建或安装步骤。
\n\n开发命令的工作原理是在给定的暂存区域中创建一个 .egg-link 文件(以项目命名)。如果暂存区域是 Python\xe2\x80\x99s\n site-packages 目录,它还会更新 easy-install.pth 文件,以便\n 对于使用该目录运行的所有程序,该项目默认位于 sys.path 上Python安装。
\n\n开发命令还会在暂存区域\n(或指定的单独目录)中安装包装器脚本,以确保在运行项目\xe2\x80 之前,项目\xe2\x80\x99s\n 依赖项在 sys.path 上可用\x99s\n 源脚本。并且,它可以确保任何缺失的项目依赖项在暂存区域中可用,并在必要时下载并安装它们。
\n\n最后但并非最不重要的一点是,develop 命令调用 build_ext -i\n 命令来确保项目中的所有 C 扩展都已构建并且\n 是最新的,并且 Egg_info 命令调用来确保项目\xe2\x80 \x99s\n 元数据已更新(以便运行时和包装器知道 \n 项目\xe2\x80\x99s 依赖项是什么)。如果对项目\xe2\x80\x99s\n 安装脚本或 C 扩展进行任何更改,则应针对所有相关暂存区域重新运行\n 开发命令,以保留项目\xe2\x80\x99s\n 脚本、\n 元数据和最新的扩展。
\n
或者,tldr;
\n\n\n\n\n\n在\xe2\x80\x9c开发模式\xe2\x80\x9d中部署您的项目,以便\xe2\x80\x99在\n sys.path上可用,但仍然可以直接从其源签出进行编辑。
\n
| 归档时间: |
|
| 查看次数: |
5810 次 |
| 最近记录: |