android studio: Could not find aar 的问题

简单说下遇到的问题

主模块app 依赖 lib下的.aar包,但是在编译时 gradle 始终提示:cound not find xxxxx.aar. 可我在app的build.gradle文件里已添加:

implementation(name: 'xxxxx', ext: 'aar')

解决办法

1. 找到项目级别的build.gradle, 添加红字部分:

buildscript {
    repositories {
        maven { url 'https://maven.aliyun.com/repository/public' }
        maven { url 'https://maven.aliyun.com/repository/google' }
        maven { url 'https://maven.aliyun.com/repository/jcenter' }
        maven { url 'https://maven.aliyun.com/repository/central' }
        maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:7.0.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/public' }
        maven { url 'https://maven.aliyun.com/repository/google' }
        maven { url 'https://maven.aliyun.com/repository/jcenter' }
        maven { url 'https://maven.aliyun.com/repository/central' }
        maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }

        flatDir {
            dirs project(':lib_ffmpeg').file('libs') // aar文件已放置到 app模块的libs目录下
        }
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

2. 找到 app的build.gradle文件,删除(如果之前已添加):

implementation(name: 'xxxx', ext: 'aar')

注意:因为上述gradle文件里已指定(检查下build.gradle有没有加下面这句引入):

implementation fileTree(dir: 'libs', include: ['*.aar', '*.jar'], exclude: [])

或者是,引入如下这句:

api(name: '你的aap的包名', ext: 'aar')

以上两句配置2选1

完成上述两步后,重新sync下项目就好了。第二步如果不做的话可能会报 Duplicate class 的错误

最后要确认下是否引入成功

1、将工程显示目录切换到Project

2、点击External Libraries,在其中找一下想引入的依赖包,如果没有说明引入失败,需要检查配置是否有问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值