开发项目,多多少少都会引进一些第三方jar或者aar资源文件,方便开发个性化功能,但这样就经常会出现包冲突、文件冲突、重复导入资源或者导入俩个不同的包中包含有相同的文件资源呢!后果导致编译失败,提示错误!
下面就来加讲解下我遇到问题及解决方法:
1. 文件冲突
文件错误提示
一般类似这样的Error:Execution failed for task ‘:app:transformResourcesWithMergeJavaResForDebug’.> com.android.build.api.transform.TransformException: com.android.builder.packaging.DuplicateFileException: Duplicate files copied in APK META-INF/maven/com.squareup.okio/okio/pom.xml File1: C:\Users\WX_JIN.gradle\caches\modules-2\files-2.1\com.squareup.okio\okio\1.6.0\98476622f10715998eacf9240d6b479f12c66143\okio-1.6.0.jar File2: D:\Android\workspace\wxj\YK\app\build\intermediates\exploded-aar\YK\umenglibrary\unspecified\jars\classes.jar
上面提示Duplicate files copied in APK META-INF/maven/com.squareup.okio/okio/pom.xml
重复这个文件,我们只要去掉一个或者忽略一个就行了
解决方案
在主项目中添加build->android->添加packagingOptions exclude 包含重复的文件
2. jar冲突
冲突提示
解决方案
使用上面这种忽略掉重复的依赖包