您需要將yolk安裝到virtualenv中,否則它會列出系統包;蛋黃不知道有關當前的virtualenv。因此在啓動virtualenv的情況下運行pip install yolk
。 (如果您創建了virtualenv而沒有--no-site-packages
,則需要運行pip install --upgrade yolk
)。
我剛剛重新創建了這個場景(除了Debian擠壓Django的操作系統版本是1.2.3),它的工作。隨着--no-site-packages
:
% . foo/bin/activate
(foo)% yolk -l Django
Django - 1.2.5 - active
(foo)% deactivate
,無:
% . bar/bin/activate
(bar)% yolk -l Django
Django - 1.2.3 - non-active development (/usr/lib/pymodules/python2.6)
Django - 1.2.5 - active
在一般情況下,如果您運行的virtualenv外面安裝的任何Python程序,你不應該期望他們知道任何有關的virtualenv,除非它們能被寫爲了解virtualenv(例如pip的PIP_RESPECT_VIRTUALENV
)。
爲什麼蛋黃報告有什麼關係?你的測試導入了正確的版本,所以一切都很好。 – 2011-02-18 23:41:58
這是http://stackoverflow.com/questions/2742980/virtualenv-yolk-problem – 2011-02-19 00:29:27
的副本...雖然夠方便,但每組答案中的解釋都非常相輔相成。希望人們會明白:-) – 2011-02-19 01:34:06