Android Studio 3.1中Gradle项目同步失败,报Connection refused错误
解决Android Studio 3.1 Gradle同步"connection refused:connect"错误
首先,这个错误大概率是网络连接问题导致的——Gradle需要从google()和jcenter()仓库下载构建依赖,如果网络无法访问这些仓库,就会抛出连接拒绝的异常。结合你的build.gradle配置,我给你几个针对性的排查步骤:
1. 检查基础网络连接
先确认你的电脑能正常访问外网:
- 尝试打开浏览器访问
https://maven.google.com和https://jcenter.bintray.com,如果打不开,说明网络本身无法访问这些仓库,需要先解决网络问题(比如配置合规的网络访问环境)。
2. 排查Android Studio代理设置
很多时候代理配置错误会导致连接被拒:
- 打开Android Studio,依次点击
File > Settings > Appearance & Behavior > System Settings > HTTP Proxy - 如果你的网络不需要代理,选择
No proxy,然后点击Apply并重启AS - 如果需要代理,确保代理地址、端口、认证信息都是正确的,并且代理能访问外网仓库
3. 替换为国内镜像仓库
如果直接访问google()和jcenter()困难,建议换成国内的maven镜像(比如阿里云),修改你的根目录build.gradle如下:
buildscript { repositories { maven { url 'https://maven.aliyun.com/repository/google' } maven { url 'https://maven.aliyun.com/repository/jcenter' } maven { url 'https://maven.aliyun.com/nexus/content/groups/public' } } dependencies { classpath 'com.android.tools.build:gradle:3.1.0' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } allprojects { repositories { maven { url 'https://maven.aliyun.com/repository/google' } maven { url 'https://maven.aliyun.com/repository/jcenter' } maven { url 'https://maven.aliyun.com/nexus/content/groups/public' } } } task clean(type: Delete) { delete rootProject.buildDir }
修改后点击Sync Now重新同步,国内镜像的访问速度和稳定性会好很多。
4. 清理Android Studio缓存
有时候缓存损坏也会导致同步异常:
- 点击
File > Invalidate Caches / Restart...,选择Invalidate and Restart - 等待AS重启并重新构建,看是否能解决问题
5. 检查Gradle Wrapper版本
确保你的Gradle Wrapper版本和插件版本匹配:
- 打开
gradle/wrapper/gradle-wrapper.properties,查看distributionUrl,对于com.android.tools.build:gradle:3.1.0,对应的Gradle版本应该是4.4,所以distributionUrl应该是:
如果版本不匹配,修改后重新同步;如果下载慢,可以手动下载Gradle包,修改distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-all.zipdistributionUrl为本地路径。
按照上面的步骤逐一排查,应该能解决你的同步问题。
内容的提问来源于stack exchange,提问作者priyanka hj




