如何使用Intellij Idea的异常断点

Siy*_*Ren 32 java debugging exception intellij-idea

这似乎是一个愚蠢的问题,但我无法弄清楚如何在Intellij Idea中调试异常.谷歌搜索也没有帮助.

我尝试创建异常断点.当IDEA中断时,我希望它给我一个调用堆栈,显示导致抛出异常的方法以及自动监视窗口,就像Visual Studio的调试工具一样.相反,它列出了所有关于乱码消息LauncherClassLoader,但在运行时没有实际的异常的迹象.

那么IDEA的异常断点究竟应该如何使用呢?

mab*_*aba 66

它工作得很好,我真的不知道你有什么样的问题与Launcher或ClassLoader.可能是您已选择捕获Any exceptions,这意味着它将在启动和类加载期间捕获所有类型的异常.您必须对要捕获的异常做出具体选择,或者只是在捕获异常之前完成所有异常.

无论如何,我会告诉你如何设置一个非常简单的案例,你会发现它工作得非常好.

我有一个简单的案例,NullPointerException将抛出一个.

首先,您必须设置异常断点.

View Breakpoints...Ctrl+ Shift+ 进入窗口F8.然后按左上角的小+号.

在此输入图像描述

输入NullPointerException并按OK按钮.

在此输入图像描述

确保Any exception未选中.

现在通过右键单击main方法并选择来运行程序 Debug 'SomeClass.main()'

在此输入图像描述

最后,当异常被捕获时,您将看到所有您想要的东西,如调用堆栈监视窗口.

在此输入图像描述

  • 谢谢你,你救了我的命!我希望我可以向你投票100000次 (4认同)

Siy*_*Ren 9

我终于弄明白了.在View Breakpoints窗口中,选中Any Exception但取消选中标记Caught exception.启动程序和类加载器异常由JVM内部捕获和处理.这样,无需手动指定异常类型即可捕获任何用户异常.