在 virtualenv 中使用 easy_install 安装 django

Installing django with easy_install in a virtualenv

我是 virtualenv 的新手,所以也许我只是忽略了一些东西。我已经成功地建立了一个虚拟环境。我有 运行 activate.bat,这在命令 window 和检查 PATH 环境变量时很明显。

我在虚拟环境中的 Windows 上 运行ning 64 位 Python 2.7.8。在激活 virtualenv 之后,我执行 easy_install django,它安装了 django,但它是全局安装的,而不是安装到隔离环境中。我通过启动解释器并输入 import django... 导致导入错误来确认这一点。

我毫不犹豫地在同一个激活的命令提示符下尝试了 pip install django,效果非常好。

所以...easy_install...有什么好处?这是 easy_install 错误还是 virtualenv 错误?不幸的是,由于通过 easy_install 安装的 django 没有安装失败(它是全局安装的),我没有提供有用的错误消息。

我从不使用 activate.bat 脚本。如果我这样做,我最终会遇到问题(编辑 - 在稍微研究之后,我怀疑它是使用旧 MS-DOS 提示符的人的遗留脚本)。使用 activate.ps1 脚本。

...\virtualenv_name\Scripts\activate.ps1

您可能需要更改权限(请参阅指南中的 the execution policy section)。据我了解,RemoteSigned 政策优于 Unrestricted

你应该在你的命令提示符中得到一个带有你的 virtualenv 名称的前缀。像 (virtualenv_name) PC C:\> 现在 pip 应该可以工作了:

pip install django

您可以使用 easy_install 但是...不要使用,因为 pip 是标准的。除非你有一个特殊的情况,它可以工作而 pip 没有。