JavaReflectionを使用してメソッドを呼び出したいと思います。
問題は、このメソッド(私が書いた)が例外をスローすることです(私はmyCustomExceptionを作成しました)。try / catch句を追加すると、Eclipseが「catch句に到達できません」と表示するため、プロジェクトを実行できません。
MyClassクラスでmyMethodを呼び出そうとすると次のようになります。
270. myMethod.invoke(null, myParam); // NB : null because myMethod is static
myMethodがMyCustomExceptionをスローしない場合、すべてが正常です。しかし、MyCustomExceptionがスローされると、次のエラーメッセージが表示されます。
クラスBarClass()にあるfooMethod()を呼び出そうとしたとしましょう。
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)
at com.tests.MyClass.test5(270)
at com.tests.MyClass.main(297)
Caused by: com.tests.MyCustomException
at com.tests.barClass.fooMethod(BarClass.java:129)
... 6 more
それも可能ですか?とにかく助けてくれてありがとう。