Frage

Ich habe Eclipse-Setup mit PyDev und Liebe in der Lage, meine Skripte / apps zu debuggen. Ich habe gerade angefangen zu spielen, um mit Pylonen und frage mich, ob es eine Möglichkeit ist, den Paster-Server über Eclipse zu starten, so kann ich meine Webapp debuggen?

War es hilfreich?

Lösung

Erstellen

eine neue Startkonfiguration (Python Run)

Registerkarte Haupt

Mit paster-script.py als Hauptmodul (Sie es in dem Scripts Unterverzeichnis in Ihrem Python-Installationsverzeichnis finden)

Vergessen Sie nicht, den Stammordner Ihrer Anwendung in der PYTHONPATH Zone

hinzufügen

Argumente Stellen Sie das Basisverzeichnis in den Stammordner auch.

Als Programmargumente verwenden „dienen development.ini“ (oder was auch immer Sie verwenden, um Ihre Anwendung zu debuggen ")

Allgemein Tab

Überprüfen Sie zuteilen Konsole und Start im Hintergrund

Andere Tipps

Wenn Sie lieber nicht Einschluss- Python-Installation in Arbeitsbereich Ihres Projektes Paster zu erhalten, können Sie einen reinen Python-Treiber wie erstellen:

#!/usr/bin/env python

from paste.script.serve import ServeCommand

ServeCommand("serve").run(["development.ini"])

... und run / debuggen, die in Eclipse.

Hinweis: Dies ist ohne --reload Option ausgeführt wird, so bekommt man nicht heiß entfaltet (das heißt, Sie müssen Server neu zu laden Änderungen zu sehen). Alternativ können Sie die Option --reload hot entfaltet zu bekommen, aber dann Pydev wird nicht an Ihre Haltepunkte stoppen. Kann den Kuchen nicht essen und ihn zu ...

ServeCommand("serve").run(["--reload", "development.ini"])

yanjost hat es richtig, wollte nur hinzufügen, dass Sie sicher, dass Sie nicht über die --reload Option vornehmen müssen, wird dies den Debugger ordnungsgemäß angebracht selbst verhindern und dazu führen, dass Haltepunkte nicht zu arbeiten. Nur eine kleine Sache lief ich um.

Ich war in der Lage zu arbeiten bekommen --reload durch das ‚Arbeitsverzeichnis‘ in den Argumenten Registerkarte ändert nicht standardmäßig verwendet wird (dh wählen Sie ‚Andere‘ -> File System -> ‚Root Ihre Pylons‘ app, wo development.ini gespeichert wird.

Unter Linux, die wahrscheinlich / usr / bin / Paster sein wird oder / usr / local / bin / Paster für Paste Skript, und für Argumente ich habe: dienen $ {workspace_loc} $ {} project_path /development.ini

Ich habe auch diese Arbeit (endlich). Ich benutzte buildout statt virtualenv Masten zu installieren (Anleitung unter: http: //wiki.pylonshq.com/display/pylonscommunity/Howto+install+Pylons+with+buildout ), so dass die oben genannten Anweisungen erforderlich, um so weit ein wenig verändert werden, da die Wege gehen.

-für "Hauptmodul", verwende ich:

${workspace_loc:myeclipseprojectname/bin/paster}

(Hinzufügen --reload gemacht Grenzwerte für mich nicht, und ich getestet dies ein paar Mal)

-für "Programmargumente", verwende ich:

serve ${workspace_loc:myeclipseprojectname/mypylonsprojectname/development.ini}

-für "Working Directory, andere:" Ich benutze:

${workspace_loc:myeclipseprojectname/mypylonsprojectname}

-as oben erwähnt, in "Common Tab", "Check zuteilen Konsole und Start im Hintergrund"

-Und erinnern einen Haltepunkt zu setzen, bevor Sie versuchen.

Das beantwortet nicht wirklich Frage, wie es in Eclipse zu tun. Aber ich habe das Debuggen Paster-Server mit Winpdb, die sehr schöne grafische Python-Debugger ist (Sie es mit easy_install Winpdb installieren können).

Starten Sie einfach Ihren Server z.

winpdb /usr/local/bin/paster serve development.ini

und dann auf Ausführen-Taste.

Wie wayne heißt, es ist notwendig, nicht Verwendung --reload Option. Wenigstens war ich nicht in der Lage zu finden, wie auch zu tatsächlichen Webapp befestigen, wenn sie an dem die Auswahl gegabelten Prozess Debugger geben soll (verschiedene Prozesse Eingabe mit „fork Eltern“ und „fork Kind“ Debugger-Befehle gesteuert werden).

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top