在Eclipse IDE中调试Java时将异常作为表达式捕获

Java开发人员的日常调试情况是在其中抛​​出异常,然后您需要挖掘调试器以了解其中的内容。通常,您将尝试在引发异常之前设置一些断点,并希望您能够确定导致该异常的情况。

在Eclipse中,断点可能有一个表达式定义在哪里,只有当例如变量x等于y时才会被触发。我的问题是,是否可以定义某种全局表达式,一旦抛出异常,它被调试器捕获,允许程序员立即检查所有变量?理想情况下,您不会碰到catch块,Eclipse会捕获引发的异常并停止执行而不改变堆栈内容。

这是可能的还是受JVM的限制?

另一个例证:Eclipse Tip: Breakpoint on Exception

Eclipse允许您基于发生异常的位置设置断点。
您可以通过“j!”访问该选项。图标(即“Breakpoint View”)。

 

官方帮助主题“Add Java Exception Breakpoint ”有更多的内容。

>“未捕获异常”选项是在与未被捕获的位置抛出与断点相同类型的异常时挂起执行。
>“捕获异常”选项是在被捕获的位置抛出与断点相同类型的异常时挂起执行。
>不要忘了Exception Breakpoint Suspend on Subclass of this Exception
在遇到异常类型的子类时挂起执行。
例如,如果RuntimeException的异常断点被配置为在子类上挂起,那么它也将被NullPointerException触发。

http://stackoverflow.com/questions/587612/catching-exceptions-as-an-expression-while-debugging-java-in-eclipse-ide

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:在Eclipse IDE中调试Java时将异常作为表达式捕获