大概从2020年1月底的时候第一次遇到这个问题,当时在假期期间自己写小Demo玩,依赖下载不了就去找了个包放进去,并没有太在意。直至几天后因为疫情在家远程办公的时候新项目的依赖一直下载不了,困扰我半个月,我百度,换maven版本,扒仓库,甚至因为怀疑当时破解idea的时候改过配置文件而卸载重装idea,然而都是徒劳无功的。.但是今天看到一篇文章,随手试了试,maven开始下载依赖了…
不知道是不是这个原因,但是有错的朋友倒是可以试试哈哈。
经过这几天的试错,我总结了一下maven下载不了依赖的排错思路:
1.先看maven的设置,因为我疯狂试错,所以当时我电脑上有四个版本的maven,数不清的仓库,今早起来我只留下了一个3.6.3的maven,修改了环境变量和仓库,其余的全部删除了。然后我在idea中的配置如下:
不一样的朋友可以对一下。
2.看仓库里的配置:
仓库的配置也就是一个setting.xml文件,里边包含的是本地仓库的位置以及maven的镜像,在国内一般用的是阿里的镜像,代码如下:
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
本地仓库的位置配置就是下面这个标签,将仓库位置的绝对路径放进去就行了。
<localRepository>仓库路径</localRepository>
在这里要特别提出,因为这段时间我修改setting.xml文件都是直接用NotePad++修改的,所以bug一直没调好,后来我在一篇博客中看到,不要在外部修改,要直接在idea中打开setting.xml,然后在里边修改,当时我还心想什么狗屁道理,里边外边不一样么,但是我还是试了一下,然后我的maven就开始下载依赖了。 这里附上那位大佬的博客https://blog.csdn.net/alinekang/article/details/84030331 于是我想到了我卸载idea破解重装的时候,教程里曾经提到过在修改的文件不要在外部修改,要在idea内部打开,不懂为啥,但可能是因为这个吧。。
3.再一个就是关于网络代理的问题,可以在setting.xml文件中看一下有没有配置代理,如果有的话就注释掉就行了,没有的话网应该就没问题,可以在File–Setting–HTTP中测试一下看能不能连接到百度,如果可以就没问题。
当然也会有其他的原因,譬如说网络不好导致下载的都是LASTUPDATE的文件之类的,或者是pom文件存在依赖冲突什么的,这里就不列举了。
=========================================
2023-04-26补充:
- 仓库里lastupdate的包尽量都删除
- 实在不行可以先试试清除idea缓存,路径:file-invalidate caches,我每次都选清除并重启。
- 多试几次clean install,玄学会助你一臂之力
2024-07-08补充:
解决maven依赖,推荐使用idea插件
idea插件官网:https://plugins.jetbrains.com/plugin/7179-maven-helper/versions/stable