Pycharm调试器不会在断点上停止

问题描述 投票:9回答:7

我有一个烧瓶项目,我正在尝试调试(这几个小时前工作正常) - 当我调试项目时,我看到以下内容:

Connected to pydev debugger (build 135.1057)
/Users/vantani/cp/bin/python /Applications/PyCharm.app/helpers/pydev/pydevd.py --multiproc --save-  
signatures --client 127.0.0.1 --port 49223 --file /Users/vantani/cp/unnamed/manage.py server
pydev debugger: process 484 is connecting

/Users/vantani/cp/lib/python2.7/site-packages/flask_cache/__init__.py:152: UserWarning: Flask-  
Cache: CACHE_TYPE is set to null, caching is effectively disabled.
warnings.warn("Flask-Cache: CACHE_TYPE is set to null, "
* Running on http://127.0.0.1:5000/
* Restarting with reloader
pydev debugger: process 498 is connecting

正如我所说,这个设置工作正常。现在,调试器不会在断点处停止,调试器窗口为空。我看到PyDev创建了两个进程,我猜这是造成这个问题的原因。我重新启动了我的机器,只运行了一个pycharm进程。

python-2.7 debugging pycharm
7个回答
3
投票

只需要关闭set flask的调试模式,例如

app.run(debug=False)

1
投票

我没有烧瓶项目,但我遇到了同样的问题。在我的情况下,我不得不改变项目路径!其中有变音符号(ü,ä,ö)。通过删除它们,断点再次起作用。


1
投票

以下解决方法应该有所帮助。我在一个简单的Python脚本中遇到了同样的问题。 PyCharm调试器没有停在一个简单的断点上,只是跑到最后。

感谢Gabriel的回答,我检查了我的脚本的路径,它有俄文字母。因为我使用俄语Windows,它使用俄语字母创建名为“Administrator”的管理员用户。

我将俄语字母改为仅使用项目路径中的英文字母(只是将PyCharm项目文件夹复制到磁盘根目录并从新地方重新加载我的项目。没有其他内容被更改!)。并且调试器立即开始正常工作并在断点处停止!

看起来这是PyCharm调试器无法使用路径中不同国家字母的错误。这是英语国家以外的常见情况。


1
投票

有时这可能是由于某些其他模块使用相同的跟踪API(sys.settrace)作为调试器,例如Coverage.py。解决方案是转到Rub / Debug配置并将--no-cov标志添加到Additional Arguments。

或者你可能想删除pytest设置中的所有--cov(即pytest.ini)或用--no-cov标志运行测试,即

pytest test.py --no-cov

0
投票

对于那些有同样问题但无法解决问题的人,也许这会有效:

问题可能是,pydev没有连接到它的子进程。检查选项“调试时自动附加到子进程?”在调试器设置中设置。您可以在文件>设置>构建,执行,部署> Python调试器(当前版本的PyCharm)中找到它

通常在控制台中也有一个简短的提示,但我没有注意到它。


0
投票

删除debug_toolbar中间件后,调试器恢复正常。


-1
投票

对我来说,PyCharm实际上执行了一个不同的文件。而不是只按下运行按钮...右键单击文件=>运行'xy'它工作。

© www.soinside.com 2019 - 2024. All rights reserved.