1.Studio 签名打包出现 java.io.IOException: Can’t write、Can’t read 异常
分析出现的原因是由于引入的类库中有冲突文件所致
类似如下报错
Can't read [/home/junliang/Soft/Envirenment/sdk2/.android/build-cache/b576f92014f08ed7588f47f33f7b84e3db2ad574/output/jars/classes.jar(;;;;;;**.class)] (Duplicate zip entry [classes.jar:android/support/design/widget/CoordinatorLayout.class]))
:app:transformClassesAndResourcesWithProguardForRelease FAILED
寻找解决方案:根据翻译可知:
有两个引用的依赖重复依赖同一个类android/support/design/widget/CoordinatorLayout.class, 在android studio里查看, 确实有两个相同的类, 这个类分别在不同的依赖包里面,相应的一些版本号不一致
根据错误提示信息:
Duplicate zip entry 后面的信息CoordinatorLayout.class有问题
as中点击快捷键 ctrl+N 输入编译错误的类 CoordinatorLayout
此时发现有两个,分别在不同的包中,也就是说这两个引用类,冲突所致,解决方案:
将具有中途的类,引入同一个版本,以此为例:CoordinatorLayout在design包下,
引入同一个:
compile 'com.android.support:design:27.1.1'
重新签名打包即可成功,另外也可以使用:exclude module: 将低版本的模块依赖去掉