2013-11-22 2 views
0

Я заметил странное поведение virtualenv, установленное на моей локальной машине. Это то, что я делал:virtualenv не указывает на локальные исполняемые файлы

[email protected]:~/Development/Python$ virtualenv nac-env 
New python executable in nac-env/bin/python 
Installing Setuptools...................................................................................................................................................................................................................................done. 
Installing Pip.....................................................................................................................................................................................................................................................................................................................................done. 
[email protected]:~/Development/Python$ cd nac-env 
[email protected]:~/Development/Python/nac-env$ source ./bin/activate 
(nac-env)[email protected]:~/Development/Python/nac-env$ which python 
/usr/bin/python 
(nac-env)[email protected]:~/Development/Python/nac-env$ which pip 
/usr/bin/pip 
(nac-env)[email protected]:~/Development/Python/nac-env$ which easy_install 
/usr/local/bin/easy_install 
(nac-env)[email protected]:~/Development/Python/nac-env$ echo $PYTHONPATH 
/usr/lib/python2.7/site-packages:/usr/lib/python2.7/dist-packages 
(nac-env)[email protected]:~/Development/Python/nac-env$ deactivate 
[email protected]:~/Development/Python/nac-env$ 

Как говорит Nettuts скринкаст (http://www.youtube.com/watch?v=IX-v6yvGYFg, 6:55), python, pip и easy_install исполняемые файлы должны указывать на файлы внутри виртуальной среды и не в /usr/bin/... материал , Если значение $PYTHONPATH sysvar установлено неправильно, я думаю, что моя установка не работает должным образом ... Кто-нибудь знает, что происходит не так?

PS Я установил virtualenv глобально на своей локальной машине некоторое время назад. Вероятно, это было заложено через pip или sth.

+1

Как вы установили virtualenv? Это не нормальное поведение. Возможно, переустановите с помощью python или pip системы? – VooDooNOFX

+0

@VooDooNOFX не помню, как я это сделал, но ваше предложение было правильным. После переустановки все работает отлично, спасибо! – ducin

ответ

0

Ну, я убедился, что такое поведение у меня на самом деле не нормальное. Я удалил существующий virtualenv и заново установил его с pip и теперь все работает отлично:

[email protected]:~/Development/Python/foo$ source bin/activate 
(foo)[email protected]:~/Development/Python/foo$ which python 
/home/tomasz/Development/Python/foo/bin/python 
(foo)[email protected]:~/Development/Python/foo$ which pip 
/home/tomasz/Development/Python/foo/bin/pip 
(foo)[email protected]:~/Development/Python/foo$ which easy_install 
/home/tomasz/Development/Python/foo/bin/easy_install 
(foo)[email protected]:~/Development/Python/foo$ echo $PYTHONPATH 
/usr/lib/python2.7/site-packages:/usr/lib/python2.7/dist-packages 
0

У меня было это случилось со мной. Вы изменили путь к проекту?

Когда я впервые создал виртуальную среду, я использовал ~/src/my_project/venv, но позже изменил ее на ~/projects/my_project/venv. Когда я запускал скрипты активации, он использовал старый путь. Чтобы исправить это, я выполнил замену всех скриптов в каталоге активации с новым путем и python, pip и т. Д. Теперь были получены из виртуальной среды.

Смежные вопросы