使用requirements.txt中的相对路径安装带有pip的tar.gz文件

2024-04-29 07:24:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我们使用requirements.txt文件来存储所需的所有外部模块。除了一个模块外,其他模块都是从互联网上收集的。另一个存储在requirements.txt文件下的文件夹中。

顺便说一句,这个模块可以很容易地用pip安装

我试过用这个:

file:folder/module

或者这个:

file:./folder/module

甚至这个:

folder/module

但总是给我一个错误。 有人知道哪种方法是正确的吗?

谢谢


Tags: 模块pip文件方法txt文件夹错误互联网
2条回答

它基于当前工作目录(如果需要,使用os.getcwd()查找)和您在需求文件中提供的相对路径。

您的需求文件应该如下所示:

fabric==1.13.1
./some_fir/some_package.whl
packaging==16.8

注意这只适用于.whl文件而不是.exe

记住要留意pip安装输出是否有错误。

在当前版本的pip(1.2.1)中,需求文件中相对路径的解释方式是不明确和半断的。pip存储库中有一个公开的问题,它更详细地解释了各种问题和含糊不清之处:

https://github.com/pypa/pip/issues/328

长话短说当前实现与pip文档中的描述不匹配,因此在撰写本文时,没有一致可靠的方法来使用requirements.txt中的相对路径。

也就是说,在我的requirements.txt中放置以下内容:

./foo/bar/mymodule

mymodule目录的顶层有setup.py时工作。请注意缺少file::协议名称和包含前导./。此路径不是相对于requirements.txt文件的,而是相对于当前工作目录的。因此,必须导航到与requirements.txt相同的目录,然后运行命令:

pip install -r requirements.txt

相关问题 更多 >