如何激活virtualenv?

我已经经历了search,尝试了各种各样的select,但没有成功,现在花了好几天的时间 – 让我发疯。

使用Python 2.5.2在Red Hat Linux上运行开始使用最新的Virtualenv,但无法激活它,我发现某处build议需要更早的版本,所以我使用了Virtualenv 1.6.4,因为它应该可以与Python 2.6一起工作。

好像安装好虚拟环境

[necrailk@server6 ~]$ python virtualenv-1.6.4/virtualenv.py virtual New python executable in virtual/bin/python Installing setuptools............done. Installing pip...............done. 

环境看起来不错

 [necrailk@server6 ~]$ cd virtual [necrailk@server6 ~/virtual]$ dir bin include lib 

试图激活

 [necrailk@server6 ~/virtual]$ . bin/activate /bin/.: Permission denied. 

检查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- 

问题,所以我改变了

 [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 

尝试再次activate

 [necrailk@server6 ~/virtual]$ . bin/activate /bin/.: Permission denied. 

仍然没有喜悦

这是我的工作stream程创build一个文件夹并cd到它:

 $ virtualenv venv --distribute New python executable in venv/bin/python Installing distribute.........done. Installing pip................done. $ source venv/bin/activate (venv)$ python 

您忘记执行source bin/activate ,其中source是可执行文件的名称。 最初也碰到过我几次,很容易以为手册告诉“从环境文件夹的根目录执行”。

不需要通过chmod activate可执行文件。

你可以做

 source ./python_env/bin/activate 

或只是去目录

 cd /python_env/bin/ 

接着

 source ./activate 

祝你好运。

问题在于/bin/. 命令。 那真是奇怪,因为。 应该总是一个链接到它所在的目录(老实说,除非是一个奇怪的别名或函数,我什至不知道它是如何可能的)。有一点也是不寻常的,你的shell没有. 内build的source

一个简单的解决办法就是在不同的shell中运行virtualenv。 (一个明显的第二个好处是,不必deactivate你可以exit 。)

 /bin/bash --rcfile bin/activate 

如果你的shell支持它,你也可以使用非标准的source命令,它应该. ,但可能不存在。 (所有的说法,你应该试着弄清楚为什么你的环境很奇怪,否则会在未来再次引起你的痛苦。)

顺便说一句,你不需要chmod +x这些文件。 如果你想直接执行它们,文件只需要是可执行的。 在这种情况下,您正试图从中启动它们. ,所以他们不需要它。

Cd到环境path,转到bin文件夹。 此时当你使用ls命令时,你应该看到“激活”文件。

现在input

 source activate 

而不是./activate

使用source activate

看这个截图

我会推荐virtualenvwrapper。 它为我创造奇迹,我总是有激活问题。 http://virtualenvwrapper.readthedocs.org/en/latest/

创build名为<Your Env _name >:自己的Python虚拟环境<Your Env _name >: 我已经给了VE。

 git clone https://github.com/pypa/virtualenv.git python virtualenv.py VE 

要激活您的新虚拟环境,请运行( 注意不是./这里 ):

 . VE/bin/activate 

示例输出( 注意提示已更改 ):

 (VE)c34299@a200dblr$ 

一旦你的虚拟环境设置,你可以删除Virtualenv回购。

我遇到了运行源/ bin /激活,然后我意识到我使用tcsh作为我的terminalshell而不是bash。 一旦我切换,我能够激活venv。

也许有点迟到张贴我的答案在这里,但我仍然会发布,这可能会让某些人受益,

我面临同样的问题,

主要原因是我创build了virtualenv作为“根”用户但后来试图用另一个用户激活它。

chmod不会工作,因为你不是该文件的所有者,因此替代方法是使用chown(更改所有权)

例如:

如果你在/ home / abc / ENV中创build了virtualenv

然后CD到/ home / abc

并运行命令: chown -Rv [用户对谁 – 你要更改所有权] [所有权需要更改的文件夹/文件名]

在这个例子中,命令是: chown -Rv abc ENV

所有权成功更改后,您可以简单地运行source /ENV/bin/./activate,并且您应该能够正确地激活virtualenv。

在Mac上,将shell更改为BASH(只需在terminal中键入bash)

 [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$ 

宾果,它的工作。 见提示改变。

在Ubuntu上:

 user@local_host:~/tools$ source toolsenv/bin/activate (toolsenv) user@local_host~/tools$ 

注意:提示改变了

对于Windows您可以执行以下操作:

创build虚拟env为:virtualenv envName -python = python.exe(如果不是创build环境variables)

激活虚拟环境:> \ path \ to \ envName \ Scripts \ activate

要停用虚拟环境:> \ path \ to \ env \ Scripts \ deactivate

它适用于新的Python版本。