@[toc]
问题1:idea使用Maven爆红
实际上这个问题,我是没有遇到过,但是我的同学遇到了,后来我给他解决了,在这里我总结了下经验
点击刷新按钮
上述刷新还是无法解决的爆红情况的,有可能是没有配置镜像,导致超时的情况(已经配置过的跳过此步骤)
配置阿里云镜像:
打开 idea 的设置,查看下 maven 设置中的 settings.xml 的位置
这里插入一个题外话,这里设置中,可以勾选上一个自动导入的功能在这里插入图片描述
默认的 settings.xml 位置 C:\Users\Mr.lonesome.m2 目录下,如果目录下没有 settings.xml 文件的,我这里提供一份,我自己的配置,大家可以直接在该目录下新建一个
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
<pluginGroups></pluginGroups>
<proxies></proxies>
<servers></servers>
<mirrors>
<!-- 阿里云仓库 -->
<mirror>
<id>alimaven</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
</mirror>
<!-- 中央仓库1 -->
<mirror>
<id>repo1</id>
<mirrorOf>central</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://repo1.maven.org/maven2/</url>
</mirror>
<!-- 中央仓库2 -->
<mirror>
<id>repo2</id>
<mirrorOf>central</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://repo2.maven.org/maven2/</url>
</mirror>
</mirrors>
<profiles>
<profile>
<id>JDK-1.8</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
</properties>
</profile>
</profiles>
</settings>
如果有的话,编辑文件,将里头有一段阿里云仓库的代码复制到 <mirrors>
标签中。
完成上述操作后,重新启动 idea ,然后执行刷新的操作,然后到本地仓库里查看下是否有下载了依赖包。如果出现下载的是 .lastUpdated 结尾的文件,请继续看问题2。
问题2:配置了阿里云镜像后,还是无法导入依赖包
我在查问题的时候看到过很多都有说了一些原因,有的说是证书问题,有的说是阿里云地址改成 https 了,具体的原因,我也不是很清楚,不过,这里我继续分享下,我的解决办法
- 打开 idea 的设置界面,到 maven 的设置中,将下列代码复制到图中位置
-Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true -Dmaven.wagon.http.ssl.ignore.validity.dates=true
在这里插入图片描述
然后到 idea 下的 maven 面板中依次执行:清除、编译、安装、站点、部署
在这里插入图片描述
如果在控制栏中,出现 Download 的话,那恭喜你,看到了希望
等到这几个命令执行完成后,重新启动 idea ,如果你看到 maven 面板中,没有显示错误了,那可以尝试下导入一个依赖信息,查看是否会自动下载
在导入前,请到本地目录下,把下载失败的包删除了,就是 .lastUpdated 这样类型的文件,然后重新尝试。
如果你运气不好,到了这一步,还是不行的,无法导入依赖,或者根本连 Plugins 里的爆红情况都还没有解决的话,那请看问题3.
问题3:maven 版本和 idea 的版本不兼容的情况
这是我自己遇到过的问题,如果你的 maven 版本高过 idea 或者相对于 idea 的版本低的太多的话,会出现无法使用的情况
一般遇到这种情况,多数是由于没有使用 idea 自带的 maven ,比如我自己
解决办法:换成和 idea 发行时间相近的 maven 或者使用 idea 自带的 maven
这里给大家参考下 maven 的发行时间
在这里插入图片描述
如果要使用自带的可以到 idea 中设置:
在这里插入图片描述
重新启动 idea,然后重新尝试导入依赖信息,查看是否会下载,请不要忘记下载前,先删除 .lastUpdated 的文件,如果你是问题1都没有解决,就按着问题2重新做一次,执行 5 个命令操作,下载好 Plugins 的依赖。
接下来如果还是无法导入依赖的,就按图添加更新不完整依赖的命令
命令:
-U idea:idea
在这里插入图片描述
我也不是很清楚这里是干嘛用的,但是我在解决问题的过程中,用到了,我不确定是否起到了作用,所以,这里我也提出来下。
然后,这个命令也是我参考博客2看来的。
接下来如果还是不行的,那就修改配置文件中的阿里云镜像,改为 https
然后重新尝试下是否可以自动下载依赖,如果还是不行,看下一个步骤
到 idea 的 setting 中添加一个忽略证书的命令
-Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true
在这里插入图片描述
注意这里的命令和之前的是不一样的,这是从知乎的文章中看到的。
这里要说明下,在我提供的知乎文章中,有两个忽略证书的命令,我使用现在这个命令的时候,我是将原来的设置的第一个命令,给删掉了。
好,到这里请再次尝试导入依赖信息,点击下刷新按钮,查看是否能够下载依赖,注意:下载前还是建议先删除 .lastUpdated 类型的文件呀!
总结
maven 不能导入依赖的问题很多,很烦,一般情况下,请查看下是否配置一下几个步骤:
- 配置了阿里云的镜像
- 阿里云镜像是否配置正确,是否在镜像的第一个位置
- maven 的版本是否与 idea 兼容
- 下载的网络是否稳定
- 本地仓库中是否还存有 .lastUpdated 的文件
- 阿里云证书问题