springboot 解决java.lang.ArrayStoreException

Posted cnsu-cmh

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springboot 解决java.lang.ArrayStoreException相关的知识,希望对你有一定的参考价值。

idea工具使用 Java Exception Breakpoint 添加异常断点,在IDE里,新建一个断点,类型是Java Exception Breakpoint

 

当断点起效时,查看AnnotationUtils.findAnnotation(Class<?>, Class<A>, Set<Annotation>) line: 686 函数的参数。

可以发现

  • clazz是 class com.github.pagehelper.autoconfigure.MapperAutoConfiguration$$EnhancerBySpringCGLIB$$c62fb34c
  • annotationType是 interface org.aspectj.lang.annotation.Aspect

说明是尝试从MapperAutoConfiguration里查找@Aspect信息时出错的。

MapperAutoConfiguration里确实没有@Aspect,但是为什么抛出java.lang.ArrayStoreException。

更糟糕的是MapperAutoConfiguration 是源码包中的。

接着往下再看。。。

没办法,只能在异常类里面打断点看,异常是java.lang.ArrayStoreException: sun.reflect.annotation.TypeNotPresentExceptionProxy,那就在TypeNotPresentExceptionProxy构造中打断点

一看这恍惚明白了什么java.lang.ClassNotFoundException: org.mybatis.spring.boot.autoconfigure.MybatisAutoConfiguration

查看之后发现pom里面没写版本号...

 

以上是关于springboot 解决java.lang.ArrayStoreException的主要内容,如果未能解决你的问题,请参考以下文章

springboot如何解决跨域问题?

解决IDEA无法识别SpringBoot项目

springboot 解决跨域问题[不生效,就问你气不气?]

解决SpringBoot多模块发布时99%的问题?SpringBoot发布的8个原则和4个问题的解决

解决springboot项目请求出现非法字符问题

解决SpringBoot返回中文乱码问题方法汇总