android - 排除两个AAR Android上的重复条目

标签 android gradle gradlew

我在Android项目中使用了2个第三方 aar 依赖项,

他们俩都使用同一个称为org.spongycastle.util的编码库。

但是这里的问题是当我编译它时它在Gradle上显示错误

Error:Execution failed for task ':app:transformClassesWithJarMergingForDebug'.
> com.android.build.api.transform.TransformException:java.util.zip.ZipException: duplicate entry: org/spongycastle/util/encoders/Base64.class

我试图通过Gradle complie从aar中排除一种依赖关系
compile(name: 'libraryname', ext: 'aar') {
    exclude group: 'org.spongycastle.util'
}

但是没有解决问题的运气:(

任何帮助将排除或忽略一个依赖将不胜感激

最佳答案

看起来jar文件org.spongycaSTLe.util本身包含重复项。我已经在xmlbean jar文件中看到了相同的问题。但是,Android不喜欢重复的条目。解决此问题的一种方法是下载该特定的jar文件并删除重复的条目之一,然后将修改后的jar添加到您的libs文件夹中。此外,您需要将其从与之关联的适当编译依赖项中排除。您需要进行测试,以确保删除重复项不会破坏任何内容。如果两个重复类的内容相等,则删除重复之一不会有任何后果。

关于android - 排除两个AAR Android上的重复条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40902322/

相关文章:

java - Gradle 构建过程中使用了哪个已安装的 JDK

java - Cordova应用程序构建失败-配置根项目 'android'错误消息

android - 安卓的javacv

Android studio @aar import 创建不正确的 exploded-aar 目录

eclipse - 在Eclipse中展开爆炸 war

macos - 在Macbook上运行Gradle

java - 如何在android中的MainActivity之外创建一个对话框

java - Gradle 发布源代码和 Javadoc JAR,但不发布源 JAR

gradle - 在Gradle中从外部文件声明依赖项

android - Android Gradle 构建有大小限制吗?