首页 > 解决方案 > 'pip install' 忽略提供的版本并尝试安装最新版本

问题描述

正如您在下面的代码示例中看到的,我想安装watchdog==1.0.1但 pip 总是尝试安装最新版本(请参阅看门狗版本历史)。

PS C:\Users\username\Projects> pip install watchdog==1.0.1 --no-cache-dir
Collecting watchdog
  Downloading watchdog-2.1.3-py3-none-win_amd64.whl (75 kB)
     |████████████████████████████████| 75 kB 655 kB/s
ERROR: Could not find a version that satisfies the requirement 1.0.1 (from versions: none)
ERROR: No matching distribution found for 1.0.1

以前,我遇到的问题是我总是使用缓存版本的看门狗。解决方案是pip cache purge清理整个 pip 缓存。此外,--no-cache-dir在 install-command 之后添加也可以解决问题。尽管如此,pip install似乎始终忽略用户提供的版本并尝试安装最新版本。

标签: pythonpipversionpackage-managers

解决方案


一种解决方法是:

pypi.org上看门狗的发布文件,下载并运行

pip install .\watchdog-1.0.1-py3-none-win_amd64.whl

此手动安装有效。之前,您应该卸载看门狗,以防万一,通过pip uninstall watchdog.

如果有更好的解决pip忽略指定版本的初始问题,请告诉我。


编辑问题的可能原因:

这个答案(在我的 OP 的第一条评论中归功于@Yoav Ben Haim)表明

PyPI URL 链接有时不起作用并抛出 404 响应,因此由于 sourceforge.net 的最近升级和 PyPI 的陈旧 URL,后备 URL 链接无限重定向


推荐阅读