其他分享
首页 > 其他分享> > 为什么Android Studio要求我排除“ META-INF / LICENSE.txt”?

为什么Android Studio要求我排除“ META-INF / LICENSE.txt”?

作者:互联网

我正在运行Studio 1.1.0,最近添加了Joda-Time-2.7.jar.在尝试运行项目后,出现错误:

Duplicate files copied in APK META-INF/LICENSE.txt

File 1: /libs/twitter4j-core-4.0.2.jar

File 2: /libs/twitter4j-core-4.0.2.jar

Error:duplicate files during packaging of APK /build/outputs/apk/app-debug-unaligned.apk
Path in archive: META-INF/LICENSE.txt
Origin 1: /libs/twitter4j-core-4.0.2.jar
Origin 2: /.gradle/caches/modules-2/files-2.1/joda-time/joda-time/2.7/55997..842195/joda-time-2.7.jar

我可以添加它,它将运行良好:

packagingOptions {
    exclude 'META-INF/LICENSE.txt'
}

为什么添加Joda-Time后出现此错误?为什么Twitter4j和Joda-Time有冲突?

排除“ META-INF / LICENSE.txt”是否是一个好的解决方案?

解决方法:

打包APK时,不允许重复文件(除非它们需要合并,但这是另一回事).在您的情况下,两个jar都包含META-INF / LICENSE.txt文件,因此Gradle对此有所抱怨.

排除’META-INF / LICENSE.txt’告诉Gradle从打包过程中排除此文件.由于这只是带有许可的文本-完全可以.许可证不必包含在最终的APK中.

标签:android-library,android
来源: https://codeday.me/bug/20191120/2045271.html