没有名为pkg的模块

我正在将一个Django应用程序部署到开发服务器,并且在运行pip install requirements.txt时遇到了此错误:

Traceback (most recent call last):
  File "/var/www/mydir/virtualenvs/dev/bin/pip", line 5, in <module>
    from pkg_resources import load_entry_point
ImportError: No module named pkg_resources

pkg_resources似乎与setuptools一起分发。 最初我以为这可能没有安装到virtualenv中的python中,所以我使用以下命令将setuptools(2.6,版本与Python相同)安装到virtualenv中的Python站点包

sh setuptools-0.6c11-py2.6.egg --install-dir /var/www/mydir/virtualenvs/dev/lib/python2.6/site-packages

编辑这只发生在virtualenv内部。 如果我在virtualenv之外打开一个控制台,那么会出现pkg_resources

但我仍然遇到同样的错误。 关于为什么pkg_resources不在路径上的任何想法?


我在尝试使用pip时今天遇到了相同的ImportError 。 不知怎的, setuptools包已经在我的Python环境中被删除了。

要解决此问题,请运行setuptools的安装脚本:

wget https://bootstrap.pypa.io/ez_setup.py -O - | python

(或者如果你没有安装wget (例如OS X)),请尝试

curl https://bootstrap.pypa.io/ez_setup.py | python

可能与前缀sudo 。)

如果您有任何版本的distribute版本,或0.6以下的任何setuptools ,则必须先将其卸载。*

更多详情请参阅安装说明。


*如果您已经有一个工作distribute ,将其升级到“兼容性包装器”,将您切换到setuptools更容易。 但如果事情已经破裂,不要尝试。


sudo apt-get install --reinstall python-pkg-resources

在Debian中为我修复它。 似乎卸载一些.deb软件包(在我的情况下,扭曲集)打破了python用来查找软件包的路径


在尝试将ubuntu 13.10上的virtualenv安装到rhodecode时,我看到了这个错误。 对我来说,解决方案就是运行

pip install --upgrade setuptools
pip install --upgrade distribute 

在我运行easy_install rhodecode之前。

链接地址: http://www.djcxy.com/p/26303.html

上一篇: No module named pkg

下一篇: Python and pip, list all versions of a package that's available?