在下面的控制台输出中,它清楚地表明断点不会在新流程中起作用。这个调试器设置在哪里附加到子流程?
pydev debugger: starting
pydev debugger: New process is launching (breakpoints won't work in the new process).
pydev debugger: To debug that process please enable 'Attach to subprocess automatically while debugging?' option in the debugger settings.
Bottle v0.12.13 server starting up (using WSGIRefServer())...
Listening on http://0.0.0.0:8080/
Hit Ctrl-C to quit.
答案 0 :(得分:0)
我不知道如何附加到子流程。
但是,在调试python flask时遇到了相同的问题,并且我发现pydev debugger: New process is launching ...
问题与我在app.run中使用use_reloader=True
有关。当我删除它时,断点工作正常!
答案 1 :(得分:0)
是的。截至2018年末,VSCode可以调试python子进程。我们只需要正确设置配置即可。在Visual Studio代码中,编辑launch.json
文件,并将"subProcess": true
键值对添加到您正在使用的调试配置中。这是一个例子。
"configurations": [
{
"name": "Python: Current File",
"type": "python",
"request": "launch",
"subProcess": true,
"program": "${file}",
"console": "integratedTerminal"
}
]