为了使软件包脱机安装,我使用-d(或--download)选项pip install
。例如,pip install --download dependencies -r requirements.txt
会将requirements.txt
中提到的所有必需依赖项的包下载到dependencies
目录(但不会安装它们)。然后我使用pip install --no-index --find-links dependencies -r requirements.txt
来安装那些下载的软件包,而无需访问网络。
大部分时间它工作正常,但有时安装失败,错误“无法找到满足xyz要求的版本”。手动执行pip install --user xyz --find-links dependencies
(xyz IS存在于依赖项文件夹中)后,安装失败并显示相同的“无法找到满足要求abc的版本”错误,但使用不同的包'abc'。它重复几次,直到我手动解决所有失败的依赖项。
如果没有那些奇怪的依赖错误而没有找到已经存在的包,我怎么能运行pip install --no-index --find-links dependencies -r requirements.txt
?
答案 0 :(得分:0)
确保两件事:
离线服务器和在线服务器中的pip
版本相同。
pip -V
pip install --upgrade pip
python版本在虚拟环境或服务器中都是相同的。
python
(标题将包含版本信息)在我的情况下,我在虚拟环境之外调用pip install --download
(使用默认的python版本 - 2.7),然后在python 3的虚拟环境中安装,我得到的错误就是你提到的错误。