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

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

文章目录

在这里插入图片描述


『2020最新』Android Studio开发环境搭建系列教程


使用Android Studio在第一次导入项目或者配置完Kotlin后,会一直Build,因为需要下载一些项目中配置的依赖和gradle插件等,资源都在外网,国内的网络环境很容易超时。

可以更换镜像源 来解决Android Studio Gradle下载依赖速度慢的问题。

如果你之前设置过 Android Studio 的 HTTP Proxy,然后又取消了代理设置,那么很有可能 Andoid Studio gradle 再次编译时仍然会走代理设置,造成依赖资源一直下载失败。

分为两种:

  • 单独工程配置镜像
  • 整体工程配置

一. 单独工程配置

让项目通过阿里云 maven jcenter 下载依赖资源

第一步:AS配置Gradle

Android Studio 中Gradle默认下载的位置在C盘的用户目录下

C:\Users\用户\.gradle

在这里插入图片描述


首先,需要到Gradle官网下载最新版本,并且配置环境变量

具体步骤戳这里👉

将下载的压缩包放置到wrapper\dists下,不用解压

在这里插入图片描述

在Android Studio中配置本地安装的Gradel路径

在这里插入图片描述

第二步:修改镜像仓库

使用阿里云的国内镜像仓库,修改项目根目录下的文件

切换至全局目录:

在这里插入图片描述

打开build.gradle文件,修改镜像源

在这里插入图片描述

主要设置:

buildscriptallprojectsrepositories 分别添加

maven {    url 'https://maven.aliyun.com/repository/gradle-plugin' } //gradle 国内镜像仓maven {    url 'https://maven.aliyun.com/repository/google' }  //google 国内镜像仓maven {    url 'https://maven.aliyun.com/repository/jcenter' } //jcenter 国内镜像仓

【最终配置如下】

// Top-level build file where you can add configuration options common to all sub-projects/modules.buildscript {       repositories {           maven {    url 'https://maven.aliyun.com/repository/gradle-plugin' } //gradle 国内镜像仓        maven {    url 'https://maven.aliyun.com/repository/google' } //google 国内镜像仓        maven {    url 'https://maven.aliyun.com/repository/jcenter' } //jcenter 国内镜像仓        google()        jcenter()    }    dependencies {           classpath "com.android.tools.build:gradle:4.1.1"        // 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/gradle-plugin' } //gradle 国内镜像仓        maven {    url 'https://maven.aliyun.com/repository/google' } //google 国内镜像仓        maven {    url 'https://maven.aliyun.com/repository/jcenter' } //jcenter 国内镜像仓        google()        jcenter()    }}task clean(type: Delete) {       delete rootProject.buildDir}

另一种置版本(供参考)

打开 build.gradle文件 进行修改

  1. buildscriptallprojectsrepositories注释掉 jcenter()
  2. buildscript 添加
maven{   url 'http://maven.aliyun.com/nexus/content/groups/public/'}maven{   url "https://jitpack.io"}
  1. allprojectsrepositories 中添加(同上第一句)
maven{   url 'http://maven.aliyun.com/nexus/content/groups/public/'}

【最终配置如下】

在这里插入图片描述


个人推荐第一种配置方式,两种应该都可生效。但是第二种是老版本配置

阿里云Maven中央仓库为 提供的公共代理仓库,帮助研发人员提高研发生产效率,使用阿里云Maven中央仓库作为下载源,速度更快更稳定。

在这里插入图片描述

官方配置指南:

在这里插入图片描述

重新 清除缓存加载 项目,编译时的资源下载一般就会如丝般顺滑了。

二. 全局配置

以上配置只针对每次新创建的单独项目,每次都要在新创建的项目下修改build.gradle文件,更换镜像源未免有些繁琐。现在需要改为全局配置:

C:\Users\Administrator\.gradle 中新建 init.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){                   def url = repo.url.toString()                if (url.startsWith('https://repo1.maven.org/maven2')) {                       project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_REPOSITORY_URL."                    remove repo                }                if (url.startsWith('https://jcenter.bintray.com/')) {                       project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_JCENTER_URL."                    remove repo                }            }        }        maven {               url ALIYUN_REPOSITORY_URL            url ALIYUN_JCENTER_URL        }    }}

这个主要是解决项目中每次都要配置build.gradle,配置完后重启Android Studio即可!

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

你可能感兴趣的文章
mysql复制内容到一张新表
查看>>
mysql复制表结构和数据
查看>>
mysql复杂查询,优质题目
查看>>
MySQL外键约束
查看>>
MySQL多表关联on和where速度对比实测谁更快
查看>>
MySQL多表左右连接查询
查看>>
mysql大批量删除(修改)The total number of locks exceeds the lock table size 错误的解决办法
查看>>
mysql如何做到存在就更新不存就插入_MySQL 索引及优化实战(二)
查看>>
mysql如何删除数据表,被关联的数据表如何删除呢
查看>>
MySQL如何实现ACID ?
查看>>
mysql如何记录数据库响应时间
查看>>
MySQL子查询
查看>>
Mysql字段、索引操作
查看>>
mysql字段的细节(查询自定义的字段[意义-行列转置];UNION ALL;case-when)
查看>>
mysql字段类型不一致导致的索引失效
查看>>
mysql字段类型介绍
查看>>
mysql字段解析逗号分割_MySQL逗号分割字段的行列转换技巧
查看>>
MySQL字符集与排序规则
查看>>
MySQL字符集乱码
查看>>
mysql字符集设置
查看>>