当前位置:   article > 正文

Android安卓中多个Dependencies依赖引用了相同的“包”Multiple dex files define错误解决方案

multiple dex files define

Multiple dex files define (重复引用)

原因:在自己的项目中引用了某个“包”,而被你作为library的项目也引用了同一个“包”,引起编译错误。“包”是指类库里面出现了相同类名,不仅局限于jar包。android进行dex时会对字节码文件进行优化合并, 如果两个class完全一致, 合并以后就是一个。 但是如果两个类的类名一致但内部确有细微差别, 那么就不能合并。
背景: NewbieGuide:v2.1.0 ,我在排除库的重复引用出错,漏掉()
在这里插入图片描述
最终解决:找到引用了不需要的类的依赖库添加以下配置
support-compat-25.1.0是由于引入 compile ‘com.jakewharton:butterknife:8.5.1’生成的,所以去掉这个类库里的v4包依赖,找到 compile ‘com.jakewharton:butterknife:8.5.1’修改为:
在这里插入图片描述
注意格式!

情况一:主 module 和 library module在library中同时引入相同的“包”

错误日志:
在这里插入图片描述

1.1 错误原因:重复引用

在这里插入图片描述
在这里插入图片描述

1.2 解决方式:只保留一个

将libs文件夹下的V4包删除。
备注:能用compile引入的,尽量用compile引入。

情况二: 主 module 中多个依赖引用了相同的“包”

错误日志:
在这里插入图片描述

2.1 错误原因: 引用了同名的类

打开External Libraries查看:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
确实出现了同名的类。

2.2 解决方式:找到引用了不需要的类的依赖库添加以下配置

support-compat-25.1.0是由于引入 compile ‘com.jakewharton:butterknife:8.5.1’生成的,所以去掉这个类库里的v4包依赖,找到 compile ‘com.jakewharton:butterknife:8.5.1’修改为:

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/445086
推荐阅读
相关标签
  

闽ICP备14008679号