Android Studio gradle同步慢、无法同步、无法编译、编译报错的完美解决方法

1.gradle在Android构建过程的作用

gradle是Android里最方便也是最好的用来管理第三方库和打包用的工具。

自动下载多种类型依赖库:本地、库依赖、远程依赖。

最方便的地方是支持自定义打包脚本,为多渠道打包提供了便捷的基础。

Android Studio自带的Maven源地址是国外的,该Maven源在国内的访问速度很慢或无法访问,可以通过替换下载源为阿里云的方式解决(替换后可能报如下错误

2.Android Studio gradle编译过程报如下错误的解决方法

Error:Could not resolve all dependencies for configuration ':app:debugCompileClasspath'
Could not load module metadata from C:\Users\LENOVO\.gradle\caches\modules-2\metadata-2.71\...
Unexpected metadata type found

图片

图片

图片

C:\Users\LENOVO\.gradle\caches\modules-2\metadata-2.71\
1.其中根据报错提示,先关闭Android studio,然后删除以上目录中的metadata-2.71文件夹
2.保持联网状态,打开Android studio,此时Android studio同步时会下载许多依赖插件,等待完成即可
3.工程同步成功、编译应该也可以成功

按以上解决方法操作后,再次编译,可能会报如下错误(其中如果升级了Android studio版本后,编译之前的项目也可能失败,而报如下的类似错误

Could not read entry ':app:processDebugManifest' from...

3.完美解决方法

(1).卸载Android studio

(2).删掉C:\Users\LENOVO\.gradle目录(删掉.gradle

(3).安装最新的Android Studio

(4).首次启动Android Studio时,先注释build.gradle里"阿里云"源的配置

如图所示:

图片

图片

(5).Android Studio自带的下载源替换为阿里云的下载源

图片

图片

buildscript {
    repositories {
        //ADD START
        maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' }
        maven { url 'http://maven.aliyun.com/nexus/content/repositories/jcenter' }
        maven { url 'http://maven.aliyun.com/nexus/content/repositories/google' }
        maven { url 'http://maven.aliyun.com/nexus/content/repositories/gradle-plugin' }
        //ADD END
        google()
        jcenter()
        maven {
            url 'https://maven.google.com/'
            name 'Google'
        }
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:3.6.3'
    }
}

图片

allprojects {
    repositories {
        //ADD START
        maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' }
        maven { url 'http://maven.aliyun.com/nexus/content/repositories/jcenter' }
        maven { url 'http://maven.aliyun.com/nexus/content/repositories/google' }
        maven { url 'http://maven.aliyun.com/nexus/content/repositories/gradle-plugin' }
        //ADD END
        google()
        jcenter()
        maven {
            url "https://jitpack.io"
        }
        maven {
            url 'https://maven.google.com/'
            name 'Google'
        }
        ......
    }
}

(6).在C:\Users\LENOVO\.gradle\目录创建init.gradle配置文件

图片

图片

allprojects{
    repositories {
        def MY_ALIYUN_REPOSITORY_URL = 'http://maven.aliyun.com/nexus/content/groups/public'
        def MY_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 $MY_ALIYUN_REPOSITORY_URL."
                    remove repo
                }
                if (url.startsWith('https://jcenter.bintray.com/')) {
                    project.logger.lifecycle "Repository ${repo.url} replaced by $MY_ALIYUN_JCENTER_URL."
                    remove repo
                }
            }
        }
        maven {
            url MY_ALIYUN_REPOSITORY_URL
            url MY_ALIYUN_JCENTER_URL
        }
    }
}

(7).Android Studio App项目工程同步成功、App项目编译成功

图片

图片

原文链接​

Android Studio gradle无法编译App的完美解决方法

逆向分析辅助工具集

Android8.1虚拟化定制系统定制

Android9一键安全手机

Android10系统源码的下载与编译方法(完美编译)

Android11系统源码的下载与编译方法(解决内存、磁盘不足问题)

图片

  • 1
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

哆啦安全

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值