PyCharm 2019.2未显示异常跟踪

guicsvcw  于 2022-11-08  发布在  PyCharm
关注(0)|答案(2)|浏览(129)

非常简单的最小化示例:

if __name__ == '__main__':
    print("Still ok")
    raise Exception("Dummy exception")
    print("End of Program")

当我在Python 3.6的PyCharm 2019.2调试器中运行它时,得到了以下输出:

/usr/bin/python3.6 /home/[...]/pycharm-community-2019.2/helpers/pydev/pydevd.py --multiproc --qt-support=auto --client 127.0.0.1 --port 46850 --file /home/[...]/test_traceback.py
pydev debugger: process 18394 is connecting

Connected to pydev debugger (build 192.5728.105)
Still ok

此时调试器中断执行流,但在调试器控制台中没有显示跟踪和异常消息。如果我在PyCharm 2018.1中运行相同的,它确实会在命中断点时显示这些消息。
当我点击

时,我得到了想要的输出,但是我不能再在调试上下文中运行代码了,因为进程结束了:

Traceback (most recent call last):
  File "/home/[...]/pycharm-community-2019.2/helpers/pydev/pydevd.py", line 2060, in <module>
    main()
  File "/home/[...]/pycharm-community-2019.2/helpers/pydev/pydevd.py", line 2054, in main
    globals = debugger.run(setup['file'], None, None, is_module)
  File "/home/[...]/pycharm-community-2019.2/helpers/pydev/pydevd.py", line 1405, in run
    return self._exec(is_module, entry_point_fn, module_name, file, globals, locals)
  File "/home/[...]/pycharm-community-2019.2/helpers/pydev/pydevd.py", line 1412, in _exec
    pydev_imports.execfile(file, globals, locals)  # execute the script
  File "/home/[...]/pycharm-community-2019.2/helpers/pydev/_pydev_imps/_pydev_execfile.py", line 18, in execfile
    exec(compile(contents+"\n", file, 'exec'), glob, loc)
  File "/home/[...]/test_traceback.py", line 4, in <module>
    raise Exception("Dummy exception")
Exception: Dummy exception

Process finished with exit code 1

我的断点配置:

vzgqcmou

vzgqcmou1#

它适用于 PyCharm(社区)2019。1.4

您似乎遇到了一个(回归)错误:

影响*v2019.2.1***,计划在 v2019.2.3中修复。
解决此问题**,您必须执行以下任一操作:

  • 等待 v2019.2.3(或任何其他具有修复程序的版本)发布,然后切换到该版本(可能需要(定期)检查[JetBrains.Blog]: Release Announcements
  • 恢复到不受bug影响的(以前的)版本(正如我已经提到的:* 2019年1月4日 *)

需要注意的是:当遇到这种情况时,在(不太可能的)问题还不知道的情况下,用户可以自己动手,做一些调试,并修复问题(可能会向 JetBrains 提交一个补丁)。

更新 #0

已安装(在 20190930 上)最新补丁(v2019.2.3),PyCharm 的控制台中存在追溯(因此,漏洞已修复)。

ni65a41a

ni65a41a2#

你有没有检查你的空格在开始的每一个可执行行?有一次它发生在我身上是修复后,只是纠正了空格。

相关问题