Wie Sie einen PasteScript Fehler, wenn ich versuche, eine vorhandene Pylons App zu dienen
-
11-10-2019 - |
Frage
Ich versuche, eine vorhandene Python 2.5 Pylone Anwendung auf OS X Snow Leopard zu dienen.
Ich habe bereits Python installiert 2.5 und legen Sie es als Standard-Python-Installation, installiert Paster, und die Version des Pylons der App Bedürfnisse (0.9.6.1) sowie andere Eier installiert ... aber wenn ich mit cd zum Hauptordner und tun „Paster development.ini dienen“ ich erhalte die folgende:
File "/usr/local/bin/paster", line 5, in <module>
from pkg_resources import load_entry_point
File "/System/Library/Frameworks/Python.framework/Versions/2.5/Extras/lib/python/pkg_resources.py", line 2603, in <module>
File "/System/Library/Frameworks/Python.framework/Versions/2.5/Extras/lib/python/pkg_resources.py", line 666, in require
File "/System/Library/Frameworks/Python.framework/Versions/2.5/Extras/lib/python/pkg_resources.py", line 565, in resolve
pkg_resources.DistributionNotFound: PasteScript==1.7.3
Ich habe auf jeden Fall getan „easy_install PasteScript == 1.7.3“ und ich immer noch diese Fehlermeldung erhalten. Gibt es etwas wirklich offensichtlich, dass ich bin fehlt? Hilfe?
Vielen Dank im Voraus.
Lösung
Sie haben wahrscheinlich mehrere Python installiert auf Ihrem System. Der easy_install
Befehl wahrscheinlich installiert PasteScript in ein anderes Python-Interpreter. Sie können einen bestimmten easy_install-2.5
Befehl haben, dass Sie stattdessen für die Python 2.5 Interpreter verwendet werden soll.
Allerdings wird mit virtualenv auf dem Entwicklungssystem dringend empfohlen.
virtualenv können Sie eine Sandbox erstellen, um einen bestimmten Python-Interpreter gebunden ist, und wo Sie bestimmte Pakete Versionen lokal die auf jedes Projekt basiert installieren können.
Weitere Informationen über die Verwendung virtualenv mit Pylonen hier: http://wiki.pylonshq.com/display/pylonscookbook/Using+a + virtualenv + Sandbox
Andere Tipps
Vielleicht ist dies auch einfach eine Antwort, aber ich würde auf die spezifische Version easy_install-2.5 PasteScript==1.7.3
See versuche die Installation von Einfache Installation docs .
Bearbeiten erste Zeile in /usr/sbin/luci
, und fügen Sie dann die Version von Python der folgenden Zeile:
#!/usr/bin/python -Es
Bearbeiten erste Zeile in /usr/bin/paster
und fügen Sie dann die Version von Python auf den folgenden Zeile:
#!/usr/bin/python
Ich habe diesen Fehler, auch wenn ich tat „Paster --help“. PasteScript war in den Website-Pakete meiner virtuellen env und PasteScript zeigte in pip einfrieren. Das Problem war, dass der PasteScript Ordner in .dist-info beendet. Ein weiteres Ei genannt wurde verteilen installiert und es war an der Vorderseite meines sys.path. Es hatte eine ältere Version von pkg_resources, die nicht über „.dist-info“ Ei Ordner wusste. Die pkg_resources Logik in Frage ist in Funktion find_on_path. Sie können pkg_resources für "dist-info" suchen. So "pkg_resources.get_distribution ( 'PasteScript')" in Paste / script / command.py fand keine PasteScript obwohl es installiert wurde. Um herauszufinden, welche pkg_resources verwendet wird, können Sie Python laufen und gehen „Import pkg_resources; Druck pkg_resources“. „Verteilen“ fixed meine aktuellen Fehler zu deinstallieren (aber dann traf ich einen anderen Fehler).
Update: Ich war die Installation der neuesten CKAN 2.6.2 (vom Apr 2017) auf Ubuntu präzise (v12, ein bisschen alt, veröffentlicht in 2012-2014) (vollständig aktualisiert mit apt-get update, installiert über vagrant Bild ubuntu / precise64). Es ist kaputt. Mit Bild ubuntu / trusty64 perfekt funktioniert.