python - como - Cómo activar virtualenv?
virtualenv ubuntu (14)
He pasado por la búsqueda e intenté varias alternativas sin éxito y pasé varios días en él ahora, volviéndome loco.
Ejecutando en Red Hat Linux con Python 2.5.2 Comencé usando el Virtualenv más reciente pero no pude activarlo, encontré un sitio sugiriendo la versión anterior necesaria, así que he usado Virtualenv 1.6.4 ya que debería funcionar con Python 2.6.
Parece instalar el entorno virtual ok
[necrailk@server6 ~]$ python virtualenv-1.6.4/virtualenv.py virtual
New python executable in virtual/bin/python
Installing setuptools............done.
Installing pip...............done.
El entorno se ve bien
[necrailk@server6 ~]$ cd virtual
[necrailk@server6 ~/virtual]$ dir
bin include lib
Intentando activar
[necrailk@server6 ~/virtual]$ . bin/activate
/bin/.: Permission denied.
Checked chmod
[necrailk@server6 ~/virtual]$ cd bin
[necrailk@server6 bin]$ ls -l
total 3160
-rw-r--r-- 1 necrailk biz12 2130 Jan 30 11:38 activate
-rw-r--r-- 1 necrailk biz12 1050 Jan 30 11:38 activate.csh
-rw-r--r-- 1 necrailk biz12 2869 Jan 30 11:38 activate.fish
-rw-r--r-
Problema, así que lo cambié
[necrailk@server6 bin]$ ls -l
total 3160
-rwxr--r-- 1 necrailk biz12 2130 Jan 30 11:38 activate
-rw-r--r-- 1 necrailk biz12 1050 Jan 30 11:38 activate.csh
-rw-r--r-- 1 necrailk biz12 2869 Jan 30 11:38 activate.fish
-rw-r--r-- 1 necrailk biz12 1005 Jan 30 11:38 activate_this.py
-rwxr-xr-x 1 necrailk biz
Intenta activate
nuevo
[necrailk@server6 ~/virtual]$ . bin/activate
/bin/.: Permission denied.
Todavía no hay alegría ...
Aquí está mi flujo de trabajo después de crear una carpeta y cd
:
$ virtualenv venv --distribute
New python executable in venv/bin/python
Installing distribute.........done.
Installing pip................done.
$ source venv/bin/activate
(venv)$ python
Cd a la ruta del entorno, vaya a la carpeta bin. En este punto cuando use el comando ls, debería ver el archivo "activar".
ahora escribe
source activate
Cree su propio entorno virtual de Python llamado <Your Env _name >:
Lo he dado VE.
git clone https://github.com/pypa/virtualenv.git
python virtualenv.py VE
Para activar su nuevo entorno virtual, ejecute (tenga en cuenta que no es ./
aquí ):
. VE/bin/activate
Salida de muestra (se modificó el aviso de la nota ):
(VE)c34299@a200dblr$
Una vez que se establece su entorno virtual, puede eliminar el repositorio de Virtualenv
.
El problema allí es el /bin/.
mando. Eso es realmente extraño, desde entonces. siempre debe ser un enlace al directorio en el que se encuentra. (Honestamente, a menos que sea un alias o función extraña, ni siquiera veo cómo es posible). También es un poco inusual que su caparazón no tenga una .
incorporado para la source
.
Una solución rápida sería simplemente ejecutar el virtualenv en un shell diferente. (Una segunda ventaja obvia es que, en lugar de tener que deactivate
, puedes simplemente exit
).
/bin/bash --rcfile bin/activate
Si su shell lo admite, también puede tener el comando de source
no estándar, que debería hacer lo mismo que .
, pero puede no existir. (Dicho todo esto, debes tratar de descubrir por qué tu entorno es extraño o te volverá a causar dolor en el futuro).
Por cierto, no necesitas chmod +x
esos archivos. Los archivos solo necesitan ser ejecutables si quieres ejecutarlos directamente . En este caso, estás intentando iniciarlos desde .
para que no lo necesiten
En Mac, cambie la shell a BASH (solo escriba bash en la terminal)
[user@host tools]$. venv/bin/activate
.: Command not found.
[user@host tools]$source venv/bin/activate
Badly placed ()''s.
[user@host tools]$bash
bash-3.2$ source venv/bin/activate
(venv) bash-3.2$
Bingo, funcionó. Ver mensaje cambiado.
En Ubuntu:
user@local_host:~/tools$ source toolsenv/bin/activate
(toolsenv) user@local_host~/tools$
Nota: el aviso cambió
Olvidaste de hacer source bin/activate
donde fuente es un nombre ejecutable. Me pegó también algunas veces, es fácil pensar que el manual dice "ejecutar esto desde la carpeta raíz del entorno".
No es necesario activate
ejecutable a través de chmod
.
Probablemente sea un poco tarde para publicar mi respuesta aquí, pero aún así voy a publicar, aunque podría beneficiar a alguien,
Me enfrenté al mismo problema,
La razón principal es que creé el virtualenv como un usuario "raíz". Pero más tarde intenté activarlo usando otro usuario.
chmod no funcionará ya que no eres el propietario del archivo, por lo tanto, la alternativa es usar chown (para cambiar la propiedad)
Por ejemplo:
Si tiene su virtualenv creado en / home / abc / ENV
Luego CD a / home / abc
y ejecuta el comando: chown -Rv [user-to- who -you want-change-ownership] [carpeta / nombre de archivo cuya propiedad necesita ser cambiada]
En este ejemplo, los comandos serían: chown -Rv abc ENV
Después de que la propiedad se modificó con éxito, simplemente puede ejecutar source /ENV/bin/./activate y su debería ser capaz de activar el virtualenv correctamente.
Tu puedes hacer
source ./python_env/bin/activate
o simplemente ve al directorio
cd /python_env/bin/
y entonces
source ./activate
Buena suerte.
Tuve problemas para ejecutar source / bin / activate y luego me di cuenta de que estaba usando tcsh como shell de terminal en lugar de bash. una vez que cambié, pude activar venv.
Yo recomendaría virtualenvwrapper también. Funciona de maravilla para mí y como siempre tengo problemas con la activación. http://virtualenvwrapper.readthedocs.org/en/latest/
$ mkdir <YOURPROJECT>
Crear un nuevo proyecto
$ cd <YOURPROJECT>
Cambiar el directorio a ese proyecto
$ virtualenv <NEWVIRTUALENV>
Creando nuevos virtualenv
$ source <NEWVIRTUALENV>/bin/activate
Activando ese nuevo virtualenv
Para Windows Puede realizar lo siguiente:
PARA crear el env virtual como: virtualenv envName -python = python.exe (si no crea la variable de entorno)
Para activar el env virtual:> / path / to / envName / Scripts / activate
Para desactivar el env virtual:> / path / to / env / Scripts / deactivate
Funciona bien en la nueva versión de Python.