使用很多第三方jar、aar依赖时,有些jar包会把一些授权文件或者jar的说明文件打包进去。Android 打包时就会出现这个问题:
com.android.build.api.transform.TransformException: com.android.builder.packaging.DuplicateFileException
解决办法也很简单
修改你打包项目的build.gradle文件,例如app下的build.gradle
android {
packagingOptions {
exclude 'META-INF/LICENSE.txt'
}
}
报什么文件重复,就把什么文件exclude。
有人整理出了一个全排除的配置,暂时不知道出处。感谢大神整理的
android {
packagingOptions {
exclude 'META-INF/DEPENDENCIES.txt'
exclude 'META-INF/LICENSE.txt'
exclude 'META-INF/NOTICE.txt'
exclude 'META-INF/NOTICE'
exclude 'META-INF/LICENSE'
exclude 'META-INF/DEPENDENCIES'
exclude 'META-INF/notice.txt'
exclude 'META-INF/license.txt'
exclude 'META-INF/dependencies.txt'
exclude 'META-INF/LGPL2.1'
}
}