Pycharm CE erreicht in meinem Django-Projekt keine Haltepunkte

Dec 24 2020

Ich habe mein Projekt richtig konfiguriert, um manage.pymit den richtigen Einstellungen am richtigen Ort ausgeführt zu werden.

Ich habe auch Debug-Haltepunkte in einer Methode festgelegt, von der ich mit Sicherheit weiß, dass sie ausgeführt wird (ich habe dort eine print-Anweisung abgelegt und sie wie erwartet ausgeführt). Die Haltepunkte sind nicht deaktiviert oder bedingt:

Wenn ich mit der obigen Ausführungskonfiguration auf die Schaltfläche "Im Debug-Modus ausführen" klicke (ich bin sicher, dass es dieselbe ist, da es die einzige ist, die ich für dieses Projekt konfiguriert habe), ist dies die Konsolenausgabe, die ich erhalte:

pydev debugger: process 38083 is connecting

Connected to pydev debugger (build 192.5728.105)
Watching for file changes with StatReloader
Performing system checks...

System check identified no issues (0 silenced).
December 23, 2020 - 19:22:22
Django version 3.1.4, using settings 'FEArena.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

Als ich versuchte, einen Haltepunkt einzufügen manage.py, funktionierte dies wie erwartet und wurde ausgelöst, sobald ich auf die Schaltfläche "Debuggen" drückte. Wenn ich jedoch nach dem Start der App einen REST-Client zum Auslösen der oben genannten Methode verwende, der Haltepunkte enthält, werden die Haltepunkte nicht ausgelöst und der Debugger wird nicht gestartet. Ich erhalte eine 200 OKAntwort in meinem REST-Client, aber PyCharm stoppt den Debugger zu keinem Zeitpunkt und führt ihn aus.

Ich habe mir andere Antworten angesehen, in denen empfohlen wurde, "Gevent-kompatibles Debugging" einzustellen (was ich nicht habe, da ich Community Edition verwende), und ich habe versucht, den .idea/Ordner für das Projekt zu löschen , wodurch das Problem ebenfalls nicht behoben wurde . Ich bin mir nicht sicher, was dies sonst noch verursachen könnte. Ich möchte nur mein Programm debuggen.

Meine PyCharm-Versionsinformationen sind

PyCharm 2019.2 (Community Edition)
Build #PC-192.5728.105, built on July 23, 2019
Runtime version: 11.0.3+12-b304.10 x86_64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
macOS 10.15.7
GC: ParNew, ConcurrentMarkSweep
Memory: 4029M
Cores: 8
Registry: 
Non-Bundled Plugins: com.karateca.jstoolbox, mobi.hsz.idea.latex, net.seesharpsoft.intellij.plugins.csv, nl.rubensten.texifyidea, org.intellij.plugins.markdown

Was kann dazu führen, dass die Haltepunkte nicht ausgelöst werden, und wie behebe ich das? Ich benötige Haltepunkte, um andere Teile meines Programms zu debuggen.

Antworten

2 SLDem Jan 03 2021 at 02:49

Führen Sie Ihren Server zufällig in einer Konsole aus? Wenn dies der Fall ist, stoppen Sie den Server, der in der Konsole ausgeführt wird, und starten Sie den Server in PyCharm neu

1 C.Cooney Jan 03 2021 at 01:35

Ich hatte zuvor ein ähnliches Problem in PyCharm, als ich executor.submit aufrief. Ich musste eine Zeile einfügen, in der die Ergebnisse des Codes abgefragt wurden, um das erwartete Debugging-Verhalten erneut aufzurufen. Wenn Ihr Code mit einem Thread versehen ist, möchten Sie möglicherweise dort beginnen.

future = executor.submit(control, channel) # spawn a function control(channel)
print(f'Future result is: {future.result()}') # new line I had to add to enable debugging

Bearbeiten: Hinzufügen des Links zu dem Thread, der mir bei ähnlichem Verhalten in PyCharm geholfen hat. concurrent.futures.ThreadPoolExecutor druckt keine Fehler

1 Henri Jan 06 2021 at 17:53

Meine aktuelle Arbeitskonfiguration lautet wie folgt:

Es hat keinen Skriptpfad oder Parameter.

Wenn ich auf die grüne Schaltfläche "Debuggen" klicke, lautet der automatisch gestartete Befehl: /Users/.../virtualenv/bin/python /Applications/PyCharm.app/Contents/plugins/python/helpers/pydev/pydevd.py --multiproc --qt-support=auto --client 127.0.0.1 --port 55583 --file /Users/.../manage.py runserver 8000

Und bei dir ?

ShishirJha Jan 08 2021 at 03:30

Hallo, ich schreibe diese Antwort, da ich aufgrund meines Rufs keine Kommentare abgeben kann. Haben Sie zufällig das Cython-Debugger-Toolkit installiert, das Pycharm immer wieder vorschlägt? Wenn ja, habe ich das gleiche Problem konfrontiert. Die Lösung besteht darin, Cython-Beschleunigungen irgendwie zu löschen. Sie können diesem Link folgen, um dies zu tun.

Grundsätzlich müssen Sie in das aufgerufene Verzeichnis gehen _pydevd_bundleund pydev*.soDateien löschen . Das erfordert nun Root-Rechte. Wenn Sie das haben und sie löschen können, wird es höchstwahrscheinlich funktionieren (vorausgesetzt, Sie haben die Cython-Debugger-Erweiterung installiert).