🗒️maven-default-http-blocker
type
status
date
slug
summary
tags
category
icon
password
起因
老项目maven构建失败,完整报错如下

原因是:
Maven 3.8.1 版本发布安全更新,参见 ReleaseNotes,增加了对 HTTP 仓库的安全限制:
To solve this, we extended the mirror configuration with<blocked>parameter, and we added a newexternal:http:*mirror selector (like existingexternal:*), meaning “any external URL using HTTP”. 为了解决这个问题,我们使用<blocked>参数扩展了镜像配置,并添加了一个新的external:http:*镜像选择器(如现有的external:*),意思是“任何外部 URL使用 HTTP”。
解决办法无非以下几种:
- 修改仓库地址使用 HTTPS 协议
- 降低 maven 版本
- 修改 maven 配置
- 直接修改配置文件取消 http 的限制
- 或者对http仓库增加mirror
- 参考 stackoverflow
首先尝试将原仓库地址改成 HTTPS 协议,发现地址无效。
修改maven配置文件
首先修改了
%UserProfile%/.m2/settings.xml 再次尝试构建,返现还是失败。尝试修改 maven 安装目录下
/config/settings.xml 修改之后,构建成功。吐槽
- 项目用的个推 SDK 是 v1 版本,现在已经升级到了 v2。

- 搜了一下,感觉这个不错
MixPush
taoweiji • Updated Apr 11, 2025
本SDK不支持商业推送平台,因为第三方商业推送SDK的免费版本基本都存在黑产行为,偷偷给用户推送通知栏广告,诱导用户下载其他APP或打开其他APP,非法获利。这一点我们已经亲身经历过,我们集成的国内排名前三的推送平台就对我们公司的APP下了毒手,618的时候偷偷给用户发伪造成拼多多、淘宝、京东、微博的通知栏消息,诱导用户打开电商APP领红包,我们通过源码分析查证了,并且他们的商务已经向我公司道歉,所以切莫使用免费的商业推送SDK。
Solutions from deepSeek
方案 1:临时解决方案(不推荐)
在 Maven 命令中添加
-Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true 参数:方案 2:永久解决方案(推荐)
- 修改 Maven 的
settings.xml文件(通常位于~/.m2/settings.xml或%MAVEN_HOME%/conf/settings.xml):
- 或者允许 HTTP 访问(不推荐,仅当仓库没有 HTTPS 时使用):
方案 3:项目级解决方案
在项目的
pom.xml 中显式指定仓库(如果仓库支持 HTTPS):方案 4:升级依赖
检查是否有新版本的 SDK 可用
原因说明
- Maven 3.8.1+ 默认阻止了 HTTP 仓库(出于安全考虑)。
- 个推(Getui)的 Maven 仓库
http://mvn.gt.igexin.com是 HTTP 协议,因此被拦截。
建议优先尝试 方案 2 或 方案 3(使用 HTTPS 仓库地址)。如果仓库确实不支持 HTTPS,才考虑其他方案。
上一篇
Windows 指纹识别不可用
下一篇
Upgrage to Plasma 6
Loading...