无法访问 Maven 3.8.1 http 仓库
1.情景展示
从git上面下载下来的项目,项目导包失败,具体报错信息如下:
无法访问 Maven 3.8.1 http 仓库
可能的解决方案:
- 检查 Maven settings.xml 是否不包含 http 仓库
- 检查 Maven pom 文件是否不包含 http 仓库 http://maven.aliyun.com/nexus/content/groups/public/
- 在 Maven settings.xml 中为 http://maven.aliyun.com/nexus/content/groups/public/ 添加允许 http url 的镜像
- 在设置中将 Maven 降级到 3.8.1 或更早的版本
2.具体分析
自 Maven 3.8.1 版本起,出于安全考虑,Maven 默认禁止了对 HTTP 仓库的访问。这一变化旨在防止通过不安全连接下载依赖项可能带来的安全风险。然而,对于一些只能通过 HTTP 访问的私有仓库,这一限制可能会导致构建过程失败,从而影响开发效率和项目进展。
具体表现为:在使用 Maven 构建项目时,如果 settings.xml 或 pom.xml 文件中包含 HTTP 仓库的配置,Maven 将会抛出异常,提示禁止使用 HTTP 仓库。这对于一些无法立即升级为 HTTPS 的私有仓库而言,是一个亟需解决的问题。
还有可能是:项目的maven配置路径不对,有时候有的项目从git上下载到本地后,自带的有Maven配置。
3.解决方案
在 settings.xml 中配置一个允许 HTTP 的镜像。
具体步骤如下:
打开maven的配置文件settings.xml
文件路径:MAEN_HOME/conf/settings.xml。

如果找不到的话,可以在idea中查看自己配置的是maven信息。

如下图所示,使用了http仓库

我们需要为该仓库添加镜像。
在mirrors标签中,添加:

<mirrorOf>*指定了这个镜像将匹配所有的仓库;
<url>是您的镜像仓库的HTTP URL;
<blocked>false</blocked>确保了HTTP 下载不会被Maven默认阻止。
本文来自博客园,作者:Marydon,转载请注明原文链接:https://www.cnblogs.com/Marydon20170307/p/18619556
浙公网安备 33010602011771号