我们使用的是requirements.txt文件来存储所需的所有外部模块.每个模块,但一个从互联网收集.另一个存储在持有requirements.txt文件的文件夹下的文件夹中.
顺便说一句,这个模块可以通过pip安装轻松安装
我试过用这个:
file:folder/module
Run Code Online (Sandbox Code Playgroud)
或这个:
file:./folder/module
Run Code Online (Sandbox Code Playgroud)
甚至这个:
folder/module
Run Code Online (Sandbox Code Playgroud)
但总是给我一个错误.有谁知道哪种方法可以做到这一点?
谢谢
fin*_*inn 27
在当前版本的pip(1.2.1)中,需求文件中相对路径的解释方式是模糊和半破坏的.pip存储库中存在一个未解决的问题,它更详细地解释了各种问题和含糊之处:
https://github.com/pypa/pip/issues/328
长话短说,当前的实现与pip文档中的描述不匹配,因此在撰写本文时,没有一致且可靠的方法来使用相对路径requirements.txt.
这样做,将以下内容放入我的requirements.txt:
./foo/bar/mymodule
Run Code Online (Sandbox Code Playgroud)
当目录setup.py的顶层有一个时,mymodule它就可以工作.注意缺少file::协议名称和包含领先./.此路径与requirements.txt文件无关,而是与当前工作目录相关.因此,必须导航到与该目录相同的目录requirements.txt,然后运行该命令:
pip install -r requirements.txt
Run Code Online (Sandbox Code Playgroud)
fra*_*age 13
它基于当前工作目录(如果需要,使用 os.getcwd() 查找)和您在需求文件中提供的相对路径。
您的需求文件应如下所示:
fabric==1.13.1
./some_fir/some_package.whl
packaging==16.8
Run Code Online (Sandbox Code Playgroud)
请注意,这仅适用于 .whl 文件而不适用于 .exe
请记住留意 pip install 输出是否有错误。
对我来说,只有file:指令有效。这甚至适用于 AWS SAM,即sam build. 这是我的requirements.txt,englishapps 是我自己在 AWS Lambda 中需要的自定义 Python 包
requests
file:englishapps-0.0.1-py3-none-any.whl
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
19650 次 |
| 最近记录: |