【问题记录】maven报错:dependency ‘org.mybatis.spring.boot:mybatis-spring-boot-starter-test:2.1.0‘ not found
·
maven报错:dependency ‘org.mybatis.spring.boot:mybatis-spring-boot-starter-test:2.1.0’ not found
在出现该问题之前,我是打算创建一个父工程,由它通过 maven 的 dependencyManagement 来管理多个子工程的依赖,但是在我管理下面依赖的时候报错了:

于是我开始查阅资料:翻了以下相关的方法进行处理,都没得到解决:
- maven 仓库的镜像是否配置出错?发现没出错
- maven 仓库中的缓存删除后,进行
reload?问题没有解决

- 我导入的 mybatis 的版本是否在 maven 远程仓库中是否存在?发现是存在的,并且也在
central中(通过 maven仓库 查阅) - 我导入的 mybatis 版本,是否和我的 spring boot 版本兼容?发现也是兼容的。。。
就在我手足无措之时,我尝试用手动检查版本是否存在,在命令行输入以下指令(当然先要用 maven 可执行文件哦!)
mvn dependency:get -Dartifact=org.mybatis.spring.boot:mybatis-spring-boot-starter-test:3.0.3
报了下面的错误:

报错提示是 mybatis-spring-boot-starter-test
误识别成了一个 Maven 插件(plugin),而不是一个普通依赖(dependency)。
这就很奇怪了,明明我把依赖写在了 dependencyManagement 里面啊,可是居然说识别成了插件,我翻阅了资料,发现是以下原因导致的:
dependencyManagement只做 “版本声明” 管理,不会真正引入依赖。除非你在子模块的 里再引用它,否则不会生效。而由于目前这是一个单模块项目,Maven 有时候会错误地尝试把它解析为“插件”,于是就报了该错误!
为了解决这个问题,可以采取以下方法进行解决:
解决方案
直接把 mybatis-spring-boot-starter-test 放到 dependencies 中,然后进行 maven 刷新后,再重新放入到 dependencyManagement 中,如下所示:

下载完之后,显示正常,就可以放到 dependencyManagement 中了:


更多推荐
所有评论(0)