博客
关于我
『2020最新』Android Studio Gradle下载慢问题,配置Gradle及更换阿里云镜像
阅读量:703 次
发布时间:2019-03-15

本文共 2584 字,大约阅读时间需要 8 分钟。

Android Studio是一款功能强大的Android开发工具,但在一些情况下,比如第一次导入项目或配置完Kotlin后,Android Studio可能会因为下载依赖和Gradle插件而无限Build导致资源超时下载。这种问题特别明显于国内网络环境下。为了解决这种问题,我们可以通过更换镜像源来加快依赖资源下载速度。

在这过程中,有一个常见问题需要注意:如果你之前设置过Android Studio的HTTP代理,然后又取消了代理设置,Gradle在重新编译项目时仍然会尝试使用代理设置,导致依赖资源下载失败。这种情况下,通常有两种解决方法:一种是单独为项目配置镜像源,另一种是为整个工程配置镜像源。下面分别介绍这两种配置方法。

一. 单独工程配置

第一步:配置Gradle环境

在Android Studio中,默认情况下Gradle的下载位置在C盘的用户目录下(即C:\Users\用户.gradle)。建议将其放在与项目无关的非系统目录中,以避免占用过多存储空间。同时,确保Gradle的全局安装路径也配置正确。这一步可以通过在Android Studio中找到设置(File > Settings > Build, Execution, Deployment > Gradle)、进入Gradle设置,调整Gradle的安装目录和缓存目录。

第二步:设置镜像源

为了快速下载依赖资源,我们需要将镜像源切换为国内阿里云提供的镜像仓库。以下是详细的配置步骤:

  • 打开当前项目的build.gradle文件。
  • buildscriptallprojects的repositories部分添加阿里云镜像源:
    buildscript {    repositories {        maven {            url 'https://maven.aliyun.com/repository/gradle-plugin'        }        maven {            url 'https://maven.aliyun.com/repository/google'        }        maven {            url 'https://maven.aliyun.com/repository/jcenter'        }        google()        jcenter()    }    // ... 其他依赖配置}allprojects {    repositories {        maven {            url 'https://maven.aliyun.com/repository/gradle-plugin'        }        maven {            url 'https://maven.aliyun.com/repository/google'        }        maven {            url 'https://maven.aliyun.com/repository/jcenter'        }        google()        jcenter()    }    // ... 其他依赖配置}
  • 下载完成后,不要忘记进行项目的清除操作(Tools > Clean Project),以确保编译时的资源下载更加顺畅。
  • 二. 全局配置

    方法一:配置init.gradle文件

    如果每次新建项目都需要手动修改build.gradle文件来更换镜像源,这种繁琐的操作可以通过全局配置来避免。将init.gradle文件放置在C盘用户目录下的.Gradle目录中,不再修改每个项目的build.gradle文件。

    示例代码:

    allprojects {    repositories {        def ALIYUN_REPOSITORY_URL = 'http://maven.aliyun.com/nexus/content/groups/public'        def ALIYUN_JCENTER_URL = 'http://maven.aliyun.com/nexus/content/repositories/jcenter'        all {            ArtifactRepository repo ->            if (repo instanceof MavenArtifactRepository) {                String url = repo.url.toString()                if (url.startsWith('https://repo1.maven.org/maven2')) {                    log "Repository ${repo.url} replaced by $ALIYUN_REPOSITORY_URL."                    remove(repo)                }                if (url.startsWith('https://jcenter.bintray.com/')) {                    log "Repository ${repo.url} replaced by $ALIYUN_JCENTER_URL."                    remove(repo)                }            }        }        maven {            url ALIYUN_REPOSITORY_URL            url ALIYUN_JCENTER_URL        }    }}

    方法二:全局设置代理

    在Android Studio中,可以通过配置环境变量的方式,将镜像源设置为国内阿里云的地址。这种方法适用于所有项目,非常方便。

    转载地址:http://ymlmz.baihongyu.com/

    你可能感兴趣的文章
    PYQT.如何在QTableView中插入小部件
    查看>>
    PyQt4 代码在 PyQt5 (QHeaderView) 上不起作用
    查看>>
    PyQt4 到 PyQt5 ->mainFrame() 已弃用,需要修复才能加载网页
    查看>>
    PyQt4, class:mouseButtons用法
    查看>>
    PyQt4参考文档
    查看>>
    PyTorch Lightning:通过分布式训练扩展深度学习工作流
    查看>>
    PyQt5 - QThread:在线程仍在运行时被销毁
    查看>>
    PyQt5 - 如何从工作线程发出信号以通过 GUI 线程调用事件
    查看>>
    PyQt5 Designer 不工作:此应用程序无法启动,因为无法初始化 Qt 平台插件
    查看>>
    PyQt5 QLCNumber 没有更新
    查看>>
    PyQt5 TabWidget选项卡BarClicked TypeError:本机Qt信号不可调用
    查看>>
    PyQt5 从 PyQt4 转换信号代码
    查看>>
    PyQt5 和 asyncio:从永不完成的收益
    查看>>
    PyQt5 和 Django:如何使用 HTTP 请求(Multipart-form)上传图像?
    查看>>
    PyQt5 按钮运行功能和更新 LCD
    查看>>
    pyqt5 获取Qlabel中的图片并对其进行处理(包括Qimage转换为Mat)
    查看>>
    pyqt5 设置控件在最上层或者在下层
    查看>>
    pyqt5 设置网格布局的间距
    查看>>
    pyTorch Hub 系列#4:PGAN — GAN 模型
    查看>>
    PyQt5-基本窗口控件-QMainWindow
    查看>>