Stworzyłem virtualenv używając tej --no-site-packages
opcji i zainstalowałem wiele bibliotek. Teraz chciałbym cofnąć tę --no-site-packages
opcję i użyć również pakietów globalnych.
Czy mogę to zrobić bez ponownego tworzenia virtualenv?
Dokładniej:
Zastanawiam się, co dokładnie dzieje się podczas tworzenia virtualenv za pomocą --no-site-packages
opcji, w przeciwieństwie do nieużywania tej opcji.
Jeśli wiem, co się dzieje, mogę dowiedzieć się, jak to cofnąć.
python
virtualenv
Olivier Verdier
źródło
źródło
Odpowiedzi:
Spróbuj usunąć (lub zmienić nazwę) pliku
no-global-site-packages.txt
wLib
folderze w środowisku wirtualnym.Gdzie venv to nazwa twojego środowiska wirtualnego, a python 3.4 odpowiada dowolnej wersji Pythona, na przykład:
A jeśli zmienisz zdanie i zechcesz to odłożyć:
Uwaga: jeśli nie widzisz powyższego pliku, masz nowszą wersję virtualenv. Będziemy chcieli, aby śledzić tę odpowiedź zamiast
źródło
virtualenv/python2.7/no-global-site-packages.txt
na moim serwerze ubuntu.virtualenv/pyenv.cfg
plik. Istnieje jedna opcja dla pakietów witryn:include-system-site-packages = false
Zmień tę wartość i wywołaj Activate.ps1venv
naPython 3.4
.Przynajmniej dla Pythona 3.5.2
pyvenv.cfg
plik znajduje się w katalogu głównym virtualenv. Wszystko, co musisz zrobić, to zmienićinclude-system-site-packages
flagę zfalse
natrue
:źródło
Korzystając z virtualenvwrapper do zarządzania virtualenvami, można użyć funkcji powłoki,
toggleglobalsitepackages
aby przełączać się między używaniem i nieużywaniem pakietów witryny.źródło
Spróbuj dodać łącze symboliczne między
/virtualenv_root/lib/
a/path/to/desired/site-packages/
źródło
no-global-site-packages.txt
Nigdzie nie mam .Przejdź do folderu venv i otwórz
pyvenv.cfg
. (Np. Jeśli wywoływane jest środowisko wirtualne,myenv
plik będzie zlokalizowany wmyenv\pyvenv.cfg
)Zobaczysz ustawienie boolowskie o nazwie
include-system-site-packages
Ustaw to ustawienie,
true
aby używać pakietów globalnychJeśli chcesz wyłączyć używanie pakietów globalnych, po prostu ustaw to ustawienie na
false
.źródło