You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

执行mvn clean install时Restlet Maven依赖解析失败问题求助

解决Maven maven-default-http-blocker 依赖阻塞问题

从你给出的错误信息来看,核心问题是Maven默认阻止了HTTP协议的仓库访问——这是Maven 3.8.1及以上版本引入的安全机制,用来避免不安全的HTTP请求。你的项目需要从http://maven.repository.redhat.com/ga/和http://repository.apache.org/snapshots这两个HTTP仓库拉取依赖,刚好被默认的maven-default-http-blocker拦截了。

下面是具体的解决步骤:

1. 优先切换到HTTPS仓库地址(推荐)

大部分主流Maven仓库都提供了HTTPS镜像,这是最安全的解决方案:

  • Red Hat GA仓库的HTTPS地址:https://maven.repository.redhat.com/ga/
  • Apache Snapshots仓库的HTTPS地址:https://repository.apache.org/snapshots

你需要修改项目的pom.xml或者全局settings.xml(路径一般是~/.m2/settings.xml或Maven安装目录下的conf/settings.xml)里的仓库配置,把原来的HTTP地址替换成HTTPS版本。

比如在pom.xml中修改仓库配置:

<repositories>
    <repository>
        <id>redhat-ga-repository</id>
        <url>https://maven.repository.redhat.com/ga/</url>
        <releases>
            <enabled>true</enabled>
        </releases>
        <snapshots>
            <enabled>false</enabled>
        </snapshots>
    </repository>
    <repository>
        <id>apache.snapshots</id>
        <url>https://repository.apache.org/snapshots</url>
        <releases>
            <enabled>false</enabled>
        </releases>
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
    </repository>
</repositories>

2. 若必须使用HTTP,允许不安全协议(不推荐)

如果因为环境限制只能用HTTP,可以在仓库配置中添加allowInsecureProtocol=true参数,告诉Maven允许该HTTP仓库的访问:

<repositories>
    <repository>
        <id>redhat-ga-repository</id>
        <url>http://maven.repository.redhat.com/ga/</url>
        <releases>
            <enabled>true</enabled>
        </releases>
        <snapshots>
            <enabled>false</enabled>
        </snapshots>
        <allowInsecureProtocol>true</allowInsecureProtocol>
    </repository>
    <!-- 对apache snapshots仓库做同样配置 -->
</repositories>

或者在全局settings.xml的mirrors部分添加镜像,覆盖默认的blocker规则:

<mirrors>
    <mirror>
        <id>redhat-ga-mirror</id>
        <mirrorOf>redhat-ga-repository</mirrorOf>
        <url>http://maven.repository.redhat.com/ga/</url>
        <blocked>false</blocked>
    </mirror>
    <mirror>
        <id>apache-snapshots-mirror</id>
        <mirrorOf>apache.snapshots</mirrorOf>
        <url>http://repository.apache.org/snapshots</url>
        <blocked>false</blocked>
    </mirror>
</mirrors>

3. 验证本地仓库依赖完整性

虽然你提到依赖已存在于本地M2仓库,但有可能对应的pom文件损坏或者版本不匹配。可以尝试删除本地仓库中org.restlet.jee相关的目录(路径大概是~/.m2/repository/org/restlet/jee/org.restlet/2.3.6/),然后重新执行mvn clean install,让Maven重新拉取完整的依赖文件。

内容的提问来源于stack exchange,提问作者Chennai Cheetah

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.30 20:52:42