pyvenv 安装了错误的 pip 版本
pyvenv installs wrong pip version
我正在使用 pyvenv env
创建一个 virtualenv,但安装的 pip 版本已过时。我可以在虚拟环境中手动更新 pip,但我希望自动获得正确的版本。
没有激活 venv:
~> pip -V
pip 7.1.2 from /usr/lib/python3.4/site-packages (python 3.4)
正在安装 venv:
~> pyvenv env
~> source env/bin/activate.fish
启用 venv 后:
~> pip -V
pip 6.0.8 from /home/syntonym/test/env/lib/python3.4/site-packages (python 3.4)
我正在使用 arch,并且 pip 由 pip 和 pacman(arch 数据包管理器)管理,这可能不是一个好主意。我仍然不知道 pyvenv 从哪里获得 6.0.8 版本的 pip 或如何修复它。用 pacman 重新安装没有帮助。
编辑:
ensurepip 声称它已经是最新的:
~> python -m ensurepip --upgrade
Ignoring indexes: https://pypi.python.org/simple
Requirement already up-to-date: setuptools in /usr/lib/python3.4/site-packages
Requirement already up-to-date: pip in /usr/lib/python3.4/site-packages
您可以通过执行
在虚拟环境中手动升级pip
pip install -U pip
您遇到这个问题,因为 venv
使用 ensurepip 将 pip
添加到新环境中:
Unless the --without-pip option is given, ensurepip will be invoked to
bootstrap pip into the virtual environment.
Ensurepip 包不会从 Internet 下载或从其他任何地方抓取文件,因为所有必需的组件都已包含在包中。这样做会增加安全漏洞,因此不受支持。
Ensurepip 并非旨在为您提供最新的 pip
,而只是 "a" pip
。要获得最新版本,请使用本文开头的手动方式 post。
我正在使用 pyvenv env
创建一个 virtualenv,但安装的 pip 版本已过时。我可以在虚拟环境中手动更新 pip,但我希望自动获得正确的版本。
没有激活 venv:
~> pip -V
pip 7.1.2 from /usr/lib/python3.4/site-packages (python 3.4)
正在安装 venv:
~> pyvenv env
~> source env/bin/activate.fish
启用 venv 后:
~> pip -V
pip 6.0.8 from /home/syntonym/test/env/lib/python3.4/site-packages (python 3.4)
我正在使用 arch,并且 pip 由 pip 和 pacman(arch 数据包管理器)管理,这可能不是一个好主意。我仍然不知道 pyvenv 从哪里获得 6.0.8 版本的 pip 或如何修复它。用 pacman 重新安装没有帮助。
编辑:
ensurepip 声称它已经是最新的:
~> python -m ensurepip --upgrade
Ignoring indexes: https://pypi.python.org/simple
Requirement already up-to-date: setuptools in /usr/lib/python3.4/site-packages
Requirement already up-to-date: pip in /usr/lib/python3.4/site-packages
您可以通过执行
在虚拟环境中手动升级pippip install -U pip
您遇到这个问题,因为 venv
使用 ensurepip 将 pip
添加到新环境中:
Unless the --without-pip option is given, ensurepip will be invoked to bootstrap pip into the virtual environment.
Ensurepip 包不会从 Internet 下载或从其他任何地方抓取文件,因为所有必需的组件都已包含在包中。这样做会增加安全漏洞,因此不受支持。
Ensurepip 并非旨在为您提供最新的 pip
,而只是 "a" pip
。要获得最新版本,请使用本文开头的手动方式 post。