我遇到了这个问题
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
通过反射调用方法
method.invoke(null, input.get(i), result.get(i));
您调用的方法抛出了一个Exception
:
InvocationTargetException - 如果底层方法抛出 .
InvocationTargetException
是(from javadoc)
…包含被调用的方法或构造函数抛出的异常的检查异常。
可以在InvocationTargetException
上调用getCause
方法来检索原始异常
下面是一个例子
try {
method.invoke(null, input.get(i), result.get(i));
} catch (InvocationTargetException e) {
Throwable originalException = e.getCause();
// Print the message of the original exception
System.out.println(originalException.getMessage());
// ... or do what you like
}