博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
android/support/v4/hardware/display/DisplayManagerCompat$JellybeanMr1Impl.class
阅读量:3526 次
发布时间:2019-05-20

本文共 966 字,大约阅读时间需要 3 分钟。

题引:同事需要使用第三方库,由于这些第三方库使用的v4包版本跟我们编写的项目所使用的v4包版本不同而导致了一个bug(duplicate entry) 。

  • 引入recyclerview-swipe
  • 引入butterknife
  • bug来了
  • Instant Run

某同事引入recyclerview-swipe和butterknife

compile 'com.yanzhenjie:recyclerview-swipe:1.0.2'compile 'com.jakewharton:butterknife:8.5.1'

bug来了

* What went wrong:Execution failed for task ':yangsheng:transformClassesWithJarMergingForDebug'.> com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: android/support/v4/hardware/display/DisplayManagerCompat$JellybeanMr1Impl.class
奇怪的是,其他同事并没有报错!!!

Instant Run

最终发现同事没有报错是因为开启了Instant Run,因为Instant Run会自动过滤包冲突。

解决思路

刚开始,以为是引入recyclerview-swipe导致的,因为recyclerview-swipe使用的v4包跟我们项目使用的v4包版本不同。修改gradle如下:
compile('com.yanzhenjie:recyclerview-swipe:1.0.2') {        exclude module: 'recyclerview-v7'}
然而并没有什么卵用!!!
终于发现问题了,是引入butterknife导致的bug,gradle修改如下:
compile('com.jakewharton:butterknife:8.5.1') {        exclude module: 'support-compat'}
最终编译成功通过并且能够安装运行。

转载地址:http://nauhj.baihongyu.com/

你可能感兴趣的文章
C# 方法内改变参数的引用 不影响方法外的值
查看>>
C# vs2019 智能提示中文突然变成英文
查看>>
linux开机引导和启动过程(详细)(含配置文件解读)
查看>>
Vue学习笔记——常见简写&修饰符
查看>>
vue-element-admin源码解读——项目启动过程
查看>>
ubuntu安装teamviewer
查看>>
python多进程multiprocessing应用
查看>>
通过python对虚拟机(kvm)的实时全面监控
查看>>
python pyhook、pyqt4安装
查看>>
python 监控windows弹窗(pywin32)
查看>>
python实现windows窗体截图的三种方式
查看>>
PyQt5用户GUI制作(初识pyqt5)
查看>>
PyQt5布局管理
查看>>
PyQt5菜单和工具栏
查看>>
PyQt5事件和信号
查看>>
PyQt5对话框学习
查看>>
PyGt5控件学习
查看>>
Weka使用
查看>>
用moore数据集做网络流量分类
查看>>
tensor 与numpy互相转换
查看>>