2009-05-14 9 views
13

Ich habe Pydev richtig konfiguriert, so dass es meine App läuft, aber wenn ich meinen Code durch Einrichten von Breakpoints untersuchen/verfolgen möchte, tritt der Debugger nicht ein (kann nicht verfolgen). Hat jemand eine Idee, was hier vor sich geht?Wie kann ich richtig mit Eclipse und Pydev debuggen?

+0

Rufen Sie den Debugger mit dem richtigen Editorfenster auf (hervorgehoben)? Sie sollten mehr darüber erzählen, was Sie tun. Python oder Jython zum Beispiel. Kannst du tatsächlich irgendeinen Pyhon-Code usw. ausführen? – jbasko

+0

ja, alles Python-Code funktioniert. Zuerst setze ich einen Haltepunkt in einer Ansicht, dann wähle ich manage.py, klicken Sie auf debug und es läuft gut. Ich gehe dann zur URL für diese Ansicht, aber der Breakpoint tritt nicht ein. – prodev42

Antwort

4

--noreload Option ist von entscheidender Bedeutung, andernfalls wird der Server fork und Ihr Haltepunkt wird nicht ausgelöst.

2

Normalerweise müssten Sie manage.py nicht auswählen und debuggen. Aus Ihrer Beschreibung geht hervor, dass Sie die Django Launch Params möglicherweise nicht im Run/Debug Settings Panel eingerichtet haben.

Hier sind einige Anweisungen Schritt für Schritt:

http://pydev.blogspot.com/2006/09/configuring-pydev-to-work-with-django.html

und

http://developeradventures.blogspot.com/2008/03/eclipse-django-debugging.html

Der wichtige Teil der Eintritt in die Run/Debug-Einstellungen erweitert. Wenn es Zeit zum Debuggen ist, setzen Sie den Haltepunkt, klicken Sie auf der Eclipse-Werkzeugleiste auf den Dropdown-Pfeil der Schaltfläche Debug und wählen Sie das Django-Projekt, das Sie definiert haben. Wechseln Sie dann in einem Browserfenster zur URL Ihres Django-Servers. Eclipse sollte am Haltepunkt stoppen.

1

Ok Ich denke, ich habe gefunden, was mein Problem war. Ich musste den Haltepunkt auf der Def-Anweisung in views.py statt der Anweisungen danach setzen.

1

Wenn Sie das Django runserver debuggen, stellen Sie sicher, dass Sie den Befehlszeilenparameter --noreload angeben. Andernfalls sieht sich der Debugger die falsche Python-Instanz an und löst keine Haltepunkte aus.