目录
一、报错Plugin ‘org.springframework.boot:spring-boot-maven-plugin:‘ not found
二、报错java: 错误: 无效的源发行版:17
三、java: 无法访问org.springframework.web.bind.annotation.CrossOrigin
四、整合mybatis的时候,报java.lang.IllegalArgumentException: Unable to instantiate org.mybatis.spring.boot
报错:在使用Maven下载相关包时,出现错误Plugin ‘org.springframework.boot:spring-boot-maven-plugin:‘ not found
原因:无法识别使用哪个版本的 spring-boot-maven-plugin
包。
plugin在maven里需要专门的配置,没有配置的时候就会去普通仓库里找,但是plugin不是maven家的,所以找不到,对于这个情况呢,阿里有一个仓库可以下载这个,但是需要在settings.xml里进行配置。
解决方法:
在你maven安装地址里面的conf文件夹下面有一个settings.xml文件,右击pom.xml文件,选择maven,选择“open settings.xml ”可以快速打开这个文件。
对这个settings.xml文件添加下列代码,
spring plugins
spring plugins
spring plugins
Spring plugins
https://maven.aliyun.com/repository/spring-plugin
default
always
保存settings.xml文件,退出。
在pom.xml文件中,使用
标签管理插件。具体做法是在原来的
标签外层增加
标签,如下所示。
原因:POM文件中配置的JDK版本信息
与 "Project Structure" 窗口配置的JDK版本
不一致。
比如在本案例中,POM文件配置的JDK版本为17,而Project Structure" 窗口配置的JDK版本却为1.8,两者不一致导致出现上述报错。
解决:
修改 "Project Structure" 窗口配置的JDK版本
。
打开 “Project Structure” 窗口,修改 Project 和 Modules 下的 JDK 版本,使其保持与POM文件中配置的版本信息一致(如本项目为JDK17)。如下图所示。
ok,问题解决。
报错:
java: 无法访问org.springframework.web.bind.annotation.CrossOrigin
错误的类文件: /D:/apache-maven-3.8.6-bin/apache-maven-3.8.6/maven-jar/org/springframework/spring-web/6.0.14/spring-web-6.0.14.jar!/org/springframework/web/bind/annotation/CrossOrigin.class
类文件具有错误的版本 61.0, 应为 52.0
请删除该文件或确保该文件位于正确的类路径子目录中。
原因:
SpringBoot使用了3.0或者3.0以上
,因为Spring官方发布从Spring6以及SprinBoot3.0
开始最低支持JDK17
,所以仅需将SpringBoot版本降低为3.0以下即可(或者将JDK版本升级为17及以上)。
Spring Boot 3.0 最低要求 Java 17,并向上兼容支持 Java 19。
解决方法:
(1)此处我选择降低SpringBoot版本,将SpringBoot版本降低为3.0以下,如下所示。
pom.xml
(2)还有另外一种方法:升级JDK版本,将JDK版本升级为JDK17及以上版本。如下所示。
org.springframework.boot
spring-boot-starter-parent
3.1.0
com.example
first-spring-boot-project
0.0.1-SNAPSHOT
first-spring-boot-project
first-spring-boot-project
17
点击maven更新,
OK,问题解决。
问题还原:初次搭建SpringBoot整合Mybatis框架,导入依赖的版本是3.0.1,我本地的jdk是1.8
原因:版本不兼容而已。
解决方法:降低依赖版本
org.mybatis.spring.boot
mybatis-spring-boot-starter
2.1.3