在使用Spring3框架的时候遇到了各种各样的依赖问题,记录下来为以后方便查看
一. 使用的版本
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>3.2.3</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<java.version>17</java.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<spring-cloud-dependencies.version>2023.0.0</spring-cloud-dependencies.version>
<spring-boot-dependencies.version>3.2.3</spring-boot-dependencies.version>
<spring-cloud-alibaba.version>2022.0.0.0-RC2</spring-cloud-alibaba.version>
</properties>
二. 遇到的问题
报错:java.lang.IllegalArgumentException: Invalid value type for attribute 'factoryBeanObjectType': java.lang.String
三. 解决方案
这个问题是因为SpringBoot3.x版本的依赖不兼容的问题,具体依赖是Mybatis-plus
原来的依赖如下:
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.5</version>
</dependency>
新更改为:
<!--mybatis-plus-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.5</version>
<exclusions>
<exclusion>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>3.0.3</version>
</dependency>
暂时不知道具体的原因是因为什么,再单独引入Mybatis-plus时就会报错,但是加上mybatis就不会,可能是plus中和SpringBoot3.x的不兼容被mybatis覆盖掉了
具体方案参考链接:
https://github.com/spring-projects/spring-framework/issues/31247