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

IPv6网络环境下Gradle构建Spring Boot应用失败求助

解决IPv6网络虚拟机中Gradle依赖解析失败问题

1. 配置Gradle全局JVM参数

在项目根目录新建/编辑gradle.properties,添加以下配置,强制Gradle使用IPv6并禁用IPv4栈优先:

systemProp.java.net.preferIPv6Addresses=true
systemProp.java.net.preferIPv4Stack=false
org.gradle.jvmargs=-Djava.net.preferIPv6Addresses=true -Djava.net.preferIPv4Stack=false

之前你尝试的-Djava.net.preferIPv4Stack=true会强制走IPv4,和IPv6网络环境冲突,必须改成false。

2. 确保仓库支持IPv6解析

先检查仓库域名的IPv6解析是否正常:

nslookup repo.maven.apache.org

如果返回IPv6地址,说明解析正常;如果没有,可手动配置仓库的IPv6地址(比如Maven Central的IPv6地址[2600:1409:8000:200::2]:443),修改build.gradle中的仓库配置:

repositories {
    maven {
        url "https://[2600:1409:8000:200::2]/maven2/"
    }
}

3. 清除Gradle缓存

缓存中可能存在损坏的依赖记录,执行命令清除:

rm -rf ~/.gradle/caches

之后重新运行构建命令:

sh gradlew -Djava.net.preferIPv6Addresses=true clean bootWar -Pstage

4. 检查虚拟机IPv6网络配置

  • 确认虚拟机的IPv6地址为全局可路由地址(不是fe80开头的本地链路地址)
  • 验证IPv6连通性:ping6 repo.maven.apache.org,确保能正常连通

为什么wget能下载但Gradle不行?

wget等命令行工具会自动优先使用IPv6(如果系统支持),但Gradle的守护进程(Daemon)可能缓存了之前的IPv4相关配置,或者其内置的网络客户端需要明确指定IPv6优先参数才能生效。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 06:05:32