尝试 Spring Boot + MyBatis Plus 实现简单CRUD,结果报错Invalid bean definition
尝试 Spring Boot + MyBatis Plus 实现简单CRUD
在启动应用时,报错
Invalid bean definition with name 'userMapper' defined in file [D:\Users\Programing\JavaWeb\MySpringBatisplus\MySpringBatisplus\target\classes\com\tre2e\myspringbatisplus\mapper\userMapper.class]: Invalid value type for attribute 'factoryBeanObjectType': java.lang.String
排查了
- Mapper文件是否添加了@Mapper注解
- 检查启动类是否添加@MapperScan注解
- 重新mvn clean
本着一定会有人遇到问题的法则,于是上网google。
SpringBoot 3.x整合MyBatis-Plus时报错 Invalid bean definition with name ‘xxxMapper‘ defined in flle
找到这样一篇文章,发现问题。
Spring Boot依赖版本不匹配问题
在Spring Boot 2.x中
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.11</version>
</dependency>
而到了Spring Boot 3.x
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-spring-boot3-starter</artifactId>
<version>3.5.11</version>
</dependency>
笔者使用的是Spring Boot 3,却使用了2的依赖,所以报错。
换成3的依赖后,问题解决。

浙公网安备 33010602011771号