我正在将Django应用程序部署到开发服务器上,当我运行pip install -r 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不在路径上有任何想法吗?


当前回答

Yum -y install python-setuptools

我配置Ceph有一个问题执行命令“$ Ceph -deploy new node1” 然后执行命令“$ yum -y install python-setuptools”, 那么问题就解决了。谢谢

其他回答

在我的例子中,我最初安装了2个python版本,后来我删除了旧的版本。在创建虚拟环境时

virtualenv venv

是指已卸载的python

什么对我有用

python3 -m virtualenv venv

当你试图使用pip时也是如此。

在CentOS 6安装包python-setuptools修复了它。

yum install python-setuptools

很多答案都推荐以下方法,但是如果你通读了脚本的源代码,你就会发现它已经被弃用了。

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

如果你的pip也坏了,这也没用。

pip install setuptools

我发现我必须运行确保pip、setuptools和wheel是最新的命令,以使pip重新工作。

python -m pip install --upgrade pip setuptools wheel

我在诗歌环境中遇到了这个错误。

我采取的解决方法是:

添加setuptools作为开发依赖项

poetry add --dev setuptools

在诗词环境中安装setuptools

poetry run pip install setuptools

Yum -y install python-setuptools

我配置Ceph有一个问题执行命令“$ Ceph -deploy new node1” 然后执行命令“$ yum -y install python-setuptools”, 那么问题就解决了。谢谢