碰到类似下面的异常:
sun.reflect.annotation.TypeNotPresentExceptionProxy
java.lang.ArrayStoreException
排查方式:
直接在 TypeNotPresentExceptionProxy 构造函数里加断点,查看 Throwable 抛出的异常即可
一般是 ClassNotFoundException,一个是可能由于jar包引用不对,另一个在SpringBoot中,考虑使用 @ConditionOnClass
排查问题的方式有了,那么有必要说一下排查问题的一个方法:
有时候java中不会把每次异常的详细信息都 print 出来,这时候idea的 Java Exception Breakpoints 就十分有用了,DEBUG状态下,在 View Breakpoints,
我们可以添加捕获某个异常的断点
比如:ArrayStoreException,这样当程序即将出现该异常的时候,会立即找到在哪里会抛该异常,
(就算你没发现它停的地方要抛异常,这个时候也差不多知道什么原因了)