活动 virtualenv 不工作
Posted
技术标签:
【中文标题】活动 virtualenv 不工作【英文标题】:Active virtualenv is not working 【发布时间】:2016-02-15 04:17:57 【问题描述】:我正在使用 Python2.7.8 和 virtualenv 12.0.7
我激活了我的 virtualenv 并运行 which pip
,但它仍然显示 /usr/local/bin/pip
。
看起来我的 virtualenv 是活跃的。
(my-env)erkans-MacBook-Air:Projects erkan$
如果我在 virtualenv 处于活动状态时运行 python manage.py runserver
,它会说
没有名为 django.core.management 的模块
找不到 django 模块,因为活动的 virtualenv 不工作。但我不明白为什么?
【问题讨论】:
我假设您尝试停用并重新激活然后再试一次? @Holloway 我试过但没有解决方案。如果我在 my-env 处于活动状态时安装了一个包,它将安装在全局 pip 列表中。我没有使用 sudo 命令。 你能粘贴python命令>>> import sys; print sys.path
的输出吗?
如何激活venv?你能把激活文件的内容转储给我们看看吗?
你的 OSX 版本是多少?
【参考方案1】:
安装 virtualenv 和 virtualenvwrapper:pip install virtualenv virtualenvwrapper
在您的主文件夹中创建一个文件夹 .virtualenvs
:mkdir ~/.virtualenvs
。此文件夹将存储您的虚拟环境
将此添加到您的 ~/.bash_profile
文件中:
# Replace by the path of your python bin folder
export PATH=$PATH:/Library/Frameworks/Python.framework/Versions/2.7/bin/
# Replace by the path of your python executable script that virtualenvwrapper will use
export VIRTUALENVWRAPPER_PYTHON=/Library/Frameworks/Python.framework/Versions/2.7/bin/python3
export WORKON_HOME=~/.virtualenvs
# Replace by the path of your virtualenvwrapper.sh file
source /Library/Frameworks/Python.framework/Versions/2.7/bin/virtualenvwrapper.sh
-
重新启动 MacBook Air
创建一个虚拟环境:
mkvirtualenv stack
激活它:workon stack
现在which pip
应该输出这个:.virtualenvs/stack/bin/pip
【讨论】:
我删除了所有 virtualenvs 文件夹并重新创建。然后我现在激活 virtualenv 哪个 pip 命令指向正确的目录但仍然使用全局 pip。我如何正确检查 virtualenv pip 路径? 它输出这个.virtualenvs/stack/bin/pip
?
这是哪个 pip 的输出 --> /home/user/virtualenvs/my-project/bin/pip
但是我没有得到名为 django 的模块。我可以在点子列表中看到 Django (1.7.7)
激活你的 virtualenv 并运行:pip install Jinja2
。现在检查该软件包是否已安装在您的虚拟环境中。它应该在.virtualenvs/stack/lib/python-x.x/site-packages/
以上是关于活动 virtualenv 不工作的主要内容,如果未能解决你的问题,请参考以下文章
virtualenv和conda的区别及windows 10上的部署