【问题标题】:Debug Exception Breakpoints in multiple sub packages调试多个子包中的异常断点
【发布时间】:2014-11-20 11:49:01
【问题描述】:

我的应用程序出现以下错误:

消息出现错误: [com.arjuna.ats.internal.jta.transaction.arjunacore.commitwhenaborted] [com.arjuna.ats.internal.jta.transaction.arjunacore.commitwhenaborted] 无法提交事务。

我预计在我的代码中的某个地方会抛出一个异常,该异常被吞下而无需重新抛出或打印堆栈跟踪,并将我的事务标记为脏。被怀疑的代码集非常大(非常大),所以仅仅通过它不会削减它。

Eclipse 支持在抛出、捕获或未捕获异常时中断。问题是我在 JBoss 的上下文中运行,这也会引发异常。有没有办法通过异常过滤告诉 Eclipseonly 中断某个包及其子包中的代码。这里的关键字是子包。

我不能只添加我想要的包,因为包列表很大。数百个潜在的。我们所有的包都以 za.co 开头,所以想知道是否有办法指定类似 za.co.** 之类的内容,它可以匹配 za.co 和所有子包。

【问题讨论】:

  • 如果您要否决我的问题,请留下评论,说明为什么以及如何改进它。
  • 我认为这是一个很好的问题。不知道为什么它被否决了。

标签: java eclipse debugging exception


【解决方案1】:

在 Eclipse 调试透视图中,单击“J!” 'Breakpoints' 视图上的按钮并输入 java.lang.Exception。

当然,这将导致您捕获所有异常,因此您可以右键单击列表中的新断点并选择“断点属性”。在过滤部分,添加一个包过滤器。

【讨论】:

    【解决方案2】:

    所以大概你已经添加了一个异常断点。

    • 在断点窗口中右击断点
    • 选择“断点属性”
    • 选择过滤
    • 点击“添加包”
    • 选择您要托运的包裹

    【讨论】:

    • 感谢 TedTrippin。是的,我已经这样做了。请查看更新后的问题,该问题对我所追求的更具体。
    • 你真的应该亲自试一试,我就是这么做的。而不是“添加包”,只需使用“添加”,然后您可以指定“za.co.*”,这意味着 za.co 和所有子包。不要忘记选中复选框。
    猜你喜欢
    • 2012-12-25
    • 2015-06-14
    • 1970-01-01
    • 2011-02-06
    • 2020-04-15
    • 1970-01-01
    • 2012-08-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多