项目中有N个Module使用相同aar导致冲突解决

本文介绍了解决项目中多个模块使用相同AAR导致冲突的两种方法:一是通过修改主工程和模块的build.gradle文件,使主工程能正确识别并使用模块内的AAR;二是将库放置于远程jcenter库中,适用于更复杂场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

项目中有N个Module使用相同aar导致冲突解决

最近在做项目,要把另一个项目打包成Module集成到主工程,合并发生了冲突,原因是原来分开的两个项目都使用了BaseAdapter的aar文件,合到一起就冲突了。删掉其中任何一个要报错,怎么办?当然是上google上面搜。

在网上搜到了解决办法,

第1种解决办法

//在主工程build里加上下面代码
android {
repositories {
        flatDir {
            dirs 'libs',project(':包含aarModule名称').file('libs')
        }
    }
   }

有些人看代码是不是大概明白了意思,主工程的libs和module之间联系在一起,这样主工程就可以访问到module里面的aar了。

需要注意的点
1.如果有很多个module都要用到aar,只需要在project的build.gradle文件中添加

allprojects {
    repositories 
        flatDir {
           dirs 'libs',project(':包含aar的Module名称').file('libs')
        }
    }
}

2.如果是主工程只有一个module只需要在app的build.gradle中加 上述代码
3.aar在module中必须用api引入
4.如果aar中有通过implementation引入三方库,则主工程也需要引入一次。

api(name: 'aar名称', ext: 'aar')

第2种 解决办法

第二种就是把库放到远程 jcenter()库,等我实践了再说
待续。。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值