部分报错内容:
Caused by: java.lang.ClassCastException: sun.reflect.generics.reflectiveObjects.TypeVariableImpl cannot be cast to java.lang.Class
at com.baomidou.mybatisplus.extension.service.impl.ServiceImpl.currentModelClass(ServiceImpl.java:88) ~[mybatis-plus-extension-3.4.3.jar:3.4.3]
at com.baomidou.mybatisplus.extension.service.impl.ServiceImpl.<init>(ServiceImpl.java:62) ~[mybatis-plus-extension-3.4.3.jar:3.4.3]
at com.damo.base.service.impl.BaseService.<init>(BaseService.java:19) ~[classes/:na]
at com.damo.common.service.impl.UserService.<init>(UserService.java:10) ~[classes/:na]
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[na:1.8.0_202]
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[na:1.8.0_202]
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:1.8.0_202]
at java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[na:1.8.0_202]
at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:212) ~[spring-beans-5.3.8.jar:5.3.8]
... 52 common frames omitted
3.2.0版本中的ServiceImpl:
3.4.3版本中的ServiceImpl:
稍微对比一下,3.4.3版本中多了红框中的内容,在实体UserService编译的时候,发生了泛型的擦除,导致了该错误。
在3.4.3.1版本也修改了这一部分的代码:
所以,升级或者降级mybatis-plus
具体原因有兴趣的可以研究一下然后留个链接。我看着好像都差不多的写法。
类似问题:
https://gitee.com/baomidou/mybatis-plus/issues/I3SE8R?_from=gitee_search