阅读量:0
一、报错
二、解决
更新mybatis-plus包
<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-spring-boot3-starter</artifactId> <version>3.5.5</version> </dependency>
三、原因
mybatis-spring
官方项目中使用mybatis-plus-boot-starter
当前最新版本 3.5.4.1 ,其中依赖的mybatis-spring
版本为 2.1.1。在 mybatis-spring 2.1.1 版本的ClassPathMapperScanner#processBeanDefinitions
方法里将BeanClassName
赋值给 String 变量并将beanClassName
赋值给factoryBeanObjectType
,但是在Spring Boot 3.2
版本中FactoryBeanRegistrySupport#getTypeForFactoryBeanFromAttributes
方法已变更,如果factoryBeanObjectType
不是ResolvableType
或Class
类型会抛出IllegalArgumentException
异常。此时因为factoryBeanObjectType
是 String 类型,不符合条件而抛出异常。