【问题标题】:Eclipse & Pydev: How to break on exceptions in my code onlyEclipse 和 Pydev:如何仅在我的代码中中断异常
【发布时间】:2012-02-08 09:45:24
【问题描述】:

Pydev 2.2 添加了一个很棒的功能,让我们可以打破异常。

我的问题是,在我开始编写代码之前,我已经从 python 库中获得了大量异常。

有没有办法将 PyDev 配置为仅中断我的代码中引发的异常?

具体来说:我想在异常发生时中断——而不是在它被捕获时中断

提前致谢!

【问题讨论】:

    标签: python eclipse pydev breakpoints


    【解决方案1】:

    [编辑]

    请注意,在较新的 PyDev 版本上,PyDev 现在在 UI 中支持此功能:启用调试透视图并选择 PyDev > Manage Exception Breakpoints。

    [结束编辑]

    用户界面中没有任何内容,但您可以执行以下操作:

    在 eclipse/plugins/org.python.pydev.debug/pysrc/pydevd_frame.py 中,编辑方法 handle_exception,并使其第一行如下:

    def handle_exception(self, frame, event, arg):
        if 'my_module' not in self._args[1]:
            return
        ...
        ...
    

    (self._args[1] 是发现捕获异常的文件名,因此,您可以根据要捕获异常的代码所在的位置使用任何启发式算法)。

    【讨论】:

    • 正是我想要的。谢谢。我认为它会对 PyDev 的 UI 做出有用的补充
    猜你喜欢
    • 2012-07-29
    • 2017-11-10
    • 2011-03-13
    • 2011-11-10
    • 1970-01-01
    • 2012-03-21
    • 1970-01-01
    • 2014-11-21
    • 2011-03-28
    相关资源
    最近更新 更多