【问题标题】:Activated VENV still use system pip and system python? What's wrong?激活的 VENV 仍然使用系统 pip 和系统 python?怎么了?
【发布时间】:2012-07-31 07:19:36
【问题描述】:

当我激活 venv 时,which pip 返回 /usr/local/bin/pip 而不是 path/to/my/apps/venv/bin/pop。这是为什么呢?

我倾向于只使用rm- rf/usr/local/bin/pip 中的 pip 并再次安装,但由于这是生产服务器,我不想过多猜测 :-)

我担心的是我有(在 usr/local/bin 中):

  • easy_install
  • easy_install-2.6
  • pip-2.6
  • 虚拟环境
  • virtualenv-2.6

python --version 返回 2.6.6 和 which python 返回 /usr/bin/python,即使 venv 已激活?

运行 Debian Squeeze

【问题讨论】:

    标签: python virtualenv pip


    【解决方案1】:

    检查您的 virtualenv 是否有 local 目录。如果venv/local 存在,它是否包含pipeasy_install?如果是这样,您可以尝试通过编辑venv/bin/activate 并将venv/local/bin 添加到您的路径来解决此问题,就像在前面添加venv/bin 一样。

    类似:

    _OLD_VIRTUAL_PATH="$PATH"
    PATH="$VIRTUAL_ENV/bin:$PATH"
    PATH="$VIRTUAL_ENV/local/bin:$PATH"  # my new line
    export PATH
    

    我遇到了与我所描述的类似的问题,不幸的是我还没有将它运行到地面。另见:Why do distribute and pip install to my virtualenv's ./local/bin?

    【讨论】:

      【解决方案2】:

      你用的是什么外壳?你用什么具体的命令来激活 virtualenv?

      就我而言(也使用挤压),我使用的是 bash,如果我运行“source bin/activate”,那么我路径中的所有内容(pip、python 等)都是正确的。

      【讨论】:

      • 在我的本地机器上我使用 zsh - 但在 debian 机器上我使用 bash。我和你一样激活它。 -- 但是:我记得很久以前我无法让颜色发挥作用。这在bash_profile: if [ -f ~/.bashrc ]; then$ source ~/.bashrc$ fi 中已修复,但这不重要。
      猜你喜欢
      • 1970-01-01
      • 2021-09-13
      • 1970-01-01
      • 2019-06-23
      • 2010-11-01
      • 1970-01-01
      • 2020-12-26
      • 2021-09-09
      • 2017-01-26
      相关资源
      最近更新 更多