app中module导包冲突解决

本文介绍了解决Android项目中因重复依赖导致的包冲突问题的方法。通过排除特定模块或使用不同的依赖范围(如provided),可以有效避免冲突,确保项目的顺利构建。

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

在项目中导入jar包或者aar包时会碰到许多无头绪的包冲突,细查之下我们会发现,app/build下导入的包与引入的module下的包冲突的解决方法

1、项目引入v4包和v7包,因为v7包里面包含了v4包,所以导致冲突
解决方案:
compile('com.android.support:appcompat-v7:23.3.0') {
            exclude module: 'support-v4'
        }
默认情况下v7中是包含V4包的,exclude 的意思就是从v7包中去除v4包这样就可以解决冲突
2、引入的module中有v4包,然后主module又有v4包,如果你不想删除任何一个v4包,或者其他情况不能把其中的一jar包删除,这时候就要注意compile 和 provided 的区别了:

compile :jar包/依赖代码 在编译的时候需要依赖,在运行的时候也需要

provided : jar包/依赖代码 仅在编译的时候需要,但是在运行时不需要依赖

也就是说,你只要吧其中任意一个改为provided就可以了
如:provided files('libs/Alipay.jar)

同时,你还要做一步处理:

去掉这行的jar包的引入
compile fileTree(include: ['*.jar'], dir: 'libs')

后续再遇到类似的问题,我再补充,暂时先这样了!

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值