Maven构建报错:无法找到Redhat仓库中指定版本guava-parent
解决Maven找不到com.google.guava:guava-parent:pom:31.1.0.redhat-00001的问题
问题核心
你遇到的错误本质是RedHat GA仓库中不存在31.1.0.redhat-00001版本的guava-parent,你能找到的30.1.0.redhat-00001是仓库当前提供的有效版本,说明项目依赖的版本与仓库实际资源不匹配。
解决方案
1. 锁定guava-parent为仓库存在的版本
在POM中添加依赖管理配置,强制项目所有模块使用30.1.0.redhat-00001版本:
<dependencyManagement> <dependencies> <dependency> <groupId>com.google.guava</groupId> <artifactId>guava-parent</artifactId> <version>30.1.0.redhat-00001</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement>
2. 定位高版本依赖的引入来源
执行以下命令查看依赖树,找到哪个依赖间接引入了31.1.0.redhat版本的guava-parent:
mvn dependency:tree -Dverbose -Dincludes=com.google.guava:guava-parent
找到对应依赖后,在<dependencies>节点中排除该高版本依赖,或直接调整依赖的版本到兼容30.x的范围。
3. 确认仓库配置有效性
确保RedHat仓库的发布版开关开启(GA仓库仅包含正式发布版本),补充完整配置:
<repository> <id>Redhat</id> <url>https://maven.repository.redhat.com/ga/</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>false</enabled> </snapshots> </repository>
4. 重新执行强制更新
完成上述调整后,执行命令重新构建:
mvn -U clean install
内容的提问来源于stack exchange,提问作者Double M
相关产品推荐
相关产品推荐

