You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Android Studio 3.1中Gradle项目同步失败,报Connection refused错误

解决Android Studio 3.1 Gradle同步"connection refused:connect"错误

首先,这个错误大概率是网络连接问题导致的——Gradle需要从google()jcenter()仓库下载构建依赖,如果网络无法访问这些仓库,就会抛出连接拒绝的异常。结合你的build.gradle配置,我给你几个针对性的排查步骤:

1. 检查基础网络连接

先确认你的电脑能正常访问外网:

  • 尝试打开浏览器访问https://maven.google.comhttps://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应该是:
    distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-all.zip
    
    如果版本不匹配,修改后重新同步;如果下载慢,可以手动下载Gradle包,修改distributionUrl为本地路径。

按照上面的步骤逐一排查,应该能解决你的同步问题。

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

火山引擎 最新活动