有关如何打破任何异常的信息,请参阅此问题。
我在启动时遇到一百万个异常。我尝试忽略 ClassNotFoundException,但这并不好,IDE 似乎仍然会在这些(和其他)异常上中断。
那么.. 什么是一个不错的配置来仅捕获从用户代码中捕获的真正异常?(如果适用,也忽略 jUnit 中的任何异常)
有关如何打破任何异常的信息,请参阅此问题。
我在启动时遇到一百万个异常。我尝试忽略 ClassNotFoundException,但这并不好,IDE 似乎仍然会在这些(和其他)异常上中断。
那么.. 什么是一个不错的配置来仅捕获从用户代码中捕获的真正异常?(如果适用,也忽略 jUnit 中的任何异常)
正如其他海报所提到的,类过滤器是做到这一点的方法。
具体来说,您可以为您认为“您的代码”作为类过滤器的内容添加包名称。语法有点不透明,但使用简单的通配符过滤器,如:
com.whatever.package.*
听起来它会为你工作。IntelliJ 将在此处的任何包中的任何类中中断任何异常。如果您的代码位于多个位置,您当然可以定义多个通配符过滤器。
我之前只是在搞砸这个。两种方法:
1)将其配置为显式捕获您的异常,而不是“任何异常” - 如果它类似于 RuntimeException,这可能不够过滤。2)使用类结果过滤器——无论出于何种原因,这对我不起作用。曾经。
我检查了 IJ,我看到了很多选项。也许类过滤器是您的选择?
请参阅这些说明以创建特定的异常断点。简而言之:
从下拉列表中选择异常断点。
(来源:jetbrains.com)
在 Select Exception Class 对话框中,从库或项目中指定所需的异常类,然后单击 OK。
我添加这个答案是因为我很难找到serg10接受的答案中提到的 Class Filters 子对话框。要查看该子对话框,请执行以下操作:
1) 使用以下键盘快捷键 (Ctrl + Shift + F8) 打开查看断点对话框,假设您没有更改该快捷键的绑定。
2)检查左侧列中标题为“Java Exception Breakpoints”的条目。这应该会自动检查属于该顶级元素的标题为“Any Exception”的子项。
3)直接单击标题为“任何异常”的子项。您现在应该会在右侧看到 Class filters 下拉框。
4) 选中“类过滤器”旁边的复选框。View Breakpoints对话框现在应该如下所示:
5) 单击类过滤器下拉框旁边的省略号。您现在应该看到Class Filters对话框。