pip virtualenv 重新激活后重置路径

pip virtualenv reset the path after reactivating

我已经安装了 pip3 virtualenv 并通过激活 virtualenv 安装了几个包。当时命令which python给出了virtualenv的路径。让我们说 ..../env/bin/python

但是在停用并再次获取路径后(重新激活which python使用全局路径/usr/bin/python,它不允许使用我的包安装到 virtualenv。有没有想过?

通常不会发生。重新激活后,它应该从 virtualenv python 中选择。

我的两分钱。

  1. Virtualenv 在 PATH 变量的末尾添加 python。所以 usr/bin/python会在前面找到n个运行.
  2. 如果您的 .bash_profile 出现问题,也会发生这种情况。它也可能 如果虚拟环境是在 python3 中创建的,默认情况下它将具有 python2.7

因此您需要同时检查路径和 env global 与 virtual env one。

这是一个愚蠢的错误。 virtualenv 在目录 ..../env/bin 中维护一个名为 activate 的脚本 并且该文件使用 export PATH 的绝对路径并猜测会出现什么问题。

假设绝对 PATH/home/user/test/env/bin

如果您将目录 test 重命名为 test2。激活文件仍然使用旧的绝对路径。所以你必须手动更改 .../env/bin/activate 下的 PATH 并将 VIRTUAL_ENV 变量更改为新的绝对路径