无法在AVD上启动Flutter应用:java.net.BindException错误求助
解决Flutter启动AVD时的java.net.BindException连接问题
核心问题分析
从错误日志能明确看出,问题出在Gradle Wrapper尝试下载资源时无法建立网络连接,最终导致assembleDebug任务失败。这并非Flutter或AVD本身的故障,而是网络配置或Gradle网络相关设置异常引发的。
可行修复方案
1. 检查并清理代理设置
若系统或Gradle配置了代理,大概率会导致连接失败:
- 关闭系统层面的HTTP/HTTPS代理,确保本地网络直接连接互联网
- 打开全局Gradle配置文件:Windows路径为
C:\Users\<你的用户名>\.gradle\gradle.properties,Mac/Linux为~/.gradle/gradle.properties,删除或注释掉以下类似代理配置行:systemProp.http.proxyHost=xxx systemProp.http.proxyPort=xxx systemProp.https.proxyHost=xxx systemProp.https.proxyPort=xxx - 检查项目根目录下的
gradle.properties,同样移除代理相关配置
2. 手动指定本地Gradle版本
如果Gradle Wrapper指定的版本无法自动下载,可手动替换为本地已有的Gradle:
- 查看项目内
gradle/wrapper/gradle-wrapper.properties中的distributionUrl,示例如下:distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip - 手动下载对应版本的Gradle压缩包,存放到本地目录(比如
C:\gradle或~/gradle) - 修改
gradle-wrapper.properties的distributionUrl为本地路径,示例:distributionUrl=file\:///C:/gradle/gradle-7.5-all.zip
3. 临时关闭防火墙或安全软件
本地防火墙、杀毒软件可能拦截了Gradle的网络请求:
- 暂时关闭Windows Defender防火墙或第三方安全软件
- 重新运行
flutter run,如果成功,再将Flutter、Android Studio、Gradle添加到防火墙允许列表
4. 重置Android Studio缓存
- 打开Android Studio,点击
File > Invalidate Caches...,选择Invalidate and Restart - 重启后依次执行
flutter clean和flutter pub get,再尝试启动应用
5. 调整本地DNS设置
DNS解析异常也可能导致无法连接Gradle服务器:
- 将DNS服务器改为公共DNS,比如
8.8.8.8(Google DNS)或114.114.114.114(国内通用DNS) - 修改后刷新网络,重新运行项目
验证步骤
完成任一修复方案后,按以下步骤验证:
- 执行
flutter clean - 执行
flutter pub get - 启动AVD,运行
flutter run
内容的提问来源于stack exchange,提问作者AppSolves
相关产品推荐
相关产品推荐

