686 Stimmen

Kein Modul namens pkg_resources

Ich bin eine Django-Anwendung auf einem Dev-Server bereitstellen und bin diesen Fehler zu treffen, wenn ich ausführen 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 scheint verteilt zu werden mit setuptools . Ursprünglich dachte ich, dass dies vielleicht nicht in die Python in der Virtualenv installiert werden könnte, also installierte ich setuptools 2.6 (dieselbe Version wie Python) mit folgendem Befehl zu den Python-Site-Paketen in der Virtualenv hinzufügen:

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

EDITAR: Dies geschieht nur innerhalb der Virtualenv. Wenn ich eine Konsole außerhalb der Virtualenv öffne, dann pkg_resources ist vorhanden, aber ich erhalte immer noch den gleichen Fehler.

Irgendwelche Ideen, warum pkg_resources nicht auf dem Weg ist?

5voto

mrgnw Punkte 1752

Ich habe den Fehler mit virtualenv behoben, indem ich dies tat:

Kopiert pkg_resources.py von

/Library/Python/2.7/site-packages/setuptools

zu

/Library/Python/2.7/site-packages/

Das mag eine billige Lösung sein, aber bei mir hat sie funktioniert.

.

Wenn Setup Tools nicht vorhanden ist, können Sie versuchen, system-site-packages zu installieren, indem Sie Folgendes eingeben virtualenv --system-site-packages /DESTINATION DIRECTORY und ändern Sie den letzten Teil in das Verzeichnis, in das Sie installieren möchten. pkg_rousources.py wird unter diesem Verzeichnis in lib/python2.7/site-packages sein

5voto

dineshsundaram Punkte 11

Nach der Installation der neuesten Python-Version bin ich auf dieses Problem gestoßen 3.10.4 . Irgendwie ist die setuptools Paket und pip wurden gelöscht.

Ich habe den folgenden Befehl verwendet, um das Problem zu lösen: in [Windows]

py -m ensurepip --default-pip

5voto

David Jablonski Punkte 121

Unter Windows, mit Python 3.7, hat das bei mir funktioniert:

pip install --upgrade setuptools --user

--user installiert Pakete in Ihrem Home-Verzeichnis, was keine Admin-Rechte erfordert.

4voto

weibin Wang Punkte 41

Die einfache Lösung ist, dass Sie conda verwenden können, um setuptools oder die gesamte Umgebung zu aktualisieren. (Speziell für Windows-Benutzer.)

conda upgrade -c anaconda setuptools

Wenn die Setuptools entfernt wurden, müssen Sie die Setuptools erneut installieren.

conda install -c anaconda setuptools

Wenn alle diese Methoden nicht funktionieren, können Sie die conda-Umgebung aktualisieren. Aber ich empfehle nicht, dass Sie einige Pakete neu installieren und deinstallieren müssen, da dies die Situation verschlimmert.

3voto

kat Punkte 547

Bei mir stellte sich heraus, dass es sich um ein Problem mit den Zugriffsrechten auf site-packages . Da es sich nur um meine Entwicklungsumgebung handelt, habe ich die Berechtigungen erhöht und alles funktioniert wieder:

sudo chmod -R a+rwx /path/to/my/venv/lib/python2.7/site-packages/

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X