如何让IntelliJ调试器定位自身代码中的异常抛出位置?
解决IntelliJ调试器停在JDK内部异常位置的问题
针对你遇到的调试器停在Integer类内部异常抛出点的情况,可以通过修改异常断点的类过滤规则来解决,具体步骤如下:
- 打开断点设置面板:点击顶部菜单栏的
Run→View Breakpoints(快捷键:Ctrl+Shift+F8) - 在弹出的窗口中,找到
Java Exception Breakpoints分类下的NumberFormatException(也就是parseInt抛出的异常类型) - 选中该异常后,在右侧面板找到Class filters区域
- 点击Class filters旁的编辑按钮,添加排除规则:输入
java.lang.*(或者更宽泛的java.*),这样调试器会忽略JDK类内部抛出的该异常 - 确保右侧的
Break at throw选项处于勾选状态,点击Apply保存设置
完成以上设置后,再触发异常时,调试器就会跳过JDK内部的抛出点,直接停在你自己代码中调用Integer.parseInt的那一行(也就是return Integer.parseInt(scan.nextLine());这行),方便你定位自己代码中的问题。
内容的提问来源于stack exchange,提问作者Librapulpfiction
相关产品推荐
相关产品推荐

