在向IDEA导入一个maven项目的时候,有一些依赖就是无法下载下来,我想尽了办法,查尽了资料,还是无法解决,最后通过我的一个突发奇想解决了问题。
一、我的pom文件报红的依赖,在maven仓库官网上都可以搜索到,但是无论想什么办法,IDEA就是下载不下来依赖
二、首先列举一下网上搜集的解决maven依赖无法下载的办法(这些方法我都试过,无法解决我的问题)
(1)网络问题。maven的官方仓库国内网络较慢,使用阿里云仓库,可以去阿里云maven仓库官网查看maven配置指南:仓库服务(我的maven配置就是官方最新的)
(2)lastUpdated 文件导致依赖无法正常导入,删除lastUpdated相关的文件,重新刷新导入依赖 (我的本地maven仓库甚至没有报红依赖的相关文件)
(3)多次点击重新导入Maven依赖的按钮
(4)将pom文件中或者右侧MavenProject报红的地方所对应的依赖全部删除掉或者注释掉,进行maven刷新,然后撤回删除再次进行maven刷新
(5)点击右上角maven相关的功能键,首先点击第一个箭头重载所有的maven工程(问题没有解决),点击第二个箭头下载所有的资源和文档(问题仍然无法解决)
(6)误点击了离线模式,如果点击了离线模式重新点击一下再次刷新maven,下图是点击离线模式前的样子
下图是点击离线模式后的样子
(7)修改maven的settings.xml文件,重新创建一个新的本地maven仓库,在网络比较好的地方重新下载所有的maven依赖
(8)maven版本和idea版本可能不兼容,打开idea的maven设置,可以使用idea推荐的maven版本
图中Bundled(Maven3)就是idea自带的maven,下面括号里的Version3.8.1就是它使用的maven具体版本,然而还是无法解决我的问题
(9)在IDEA中手动执行maven命令,点击下图按钮(Execute Maven Goal)
在命令行总输入 -U idea:idea,可以修复不完整依赖,回车执行
三、最终我通过两种方法解决了pom.xml报红的问题
(1)既然maven官方仓库可以搜索到这个依赖,那么我直接在官方仓库手动下载,然后在本地安装就好了,大家可以看这个博主的文章手动安装maven依赖到自己的maven仓库中_怎手动下载依赖_学习爪哇的博客-CSDN博客
有个问题,如果pom报红的依赖比较多,那么手动安装这么多依赖就比较繁琐
(2)我新建了一个简单的maven工程,大家可以自己创建,要足够简单,下图是我的工程目录
我把之前项目中报红的所有依赖全部复制到这个工程的pom文件中,然后点击maven刷新导入依赖,这时maven竟然下载了全部的pom报红依赖到本地仓库,然后我在之前的maven工程中刷新maven导入,pom文件报红全部消失了,问题解决了
四、为什么把相关的依赖复制到简单的maven工程中就可以下载,但是在原来的maven工程中就是死活不下载呢
我查询网上资料感觉可能是maven引用的jar包有版本冲突,或者是其他已经导入的依赖包已经包含了pom文件中报红的依赖,idea认为不需要下载这些依赖了(这些依赖是多余的),报红是因为本地仓库没有这些依赖,但是报红可能并不影响项目的启动和运行
于是我把之前报红的依赖全部注释,然后启动项目,成功启动
我撤销注释,删除本地仓库中的相关依赖,回到最开始的状态本地仓库没有这些依赖pom文件报红,我再次启动项目,项目仍然成功运行了
注:以上就是我处理IDEA中maven无法下载依赖的处理过程,希望能给大家带来帮助