java exception
程序员文章站
2022-07-15 13:02:15
...
我们有时需要把exception堆栈信息输出到日志文件当中,但是有时框架的异常会先出来,只有到cause by当中才能看到真正的内容。 例如:通过反射调用方法,如果方法里面有异常,我们会捕获到一个InvocationTargetException的异常。我们只有取它的.getCause()才能取到我们需要的异常内容。
// invoke the impl.
Object impl = getImpl(klass);
try {
return method.invoke(impl, args);
}catch (InvocationTargetException e) {
Throwable cause = e.getCause();
log.error("catch exception", cause);
if (cause instanceof java.lang.IllegalArgumentException) {
//xxx
} else {
//xxx
}
}