gpt4 book ai didi

java - 如何防止 Android Archive 库中的重复依赖

转载 作者:太空宇宙 更新时间:2023-11-04 11:52:45 24 4
gpt4 key购买 nike

我知道可能有很多关于此问题的资源,但它们似乎都不能直接解决我的问题,所以我开始了'

我认为 Android 库是独立的实体,因此一个库的内容不应影响另一个库的操作。这就是为什么我们有命名空间和包命名,但我错了。

我有两个 aar 文件已导入到我的 android 项目中。 aar 文件(即 A 和 B)位于我的 libs 文件夹中,并被添加到 gradle 中

compile (name: 'A', ext: 'aar);
compile (name: 'B', ext: 'aar);

一切都很顺利,直到我尝试构建我的项目,然后一切都陷入了困境。

库 A 有一个结构

android.fpi
MtGpio.class

图书馆 B 也是如此

android.fpi
MtGpio.class

理想情况下,它们是完全不同的库,如果它们碰巧具有相似的文件或结构,那应该不是问题。但确实如此,我受到了打击:

app:transformClassesWithJarMergingForDebug
com.................................ZipException: duplicate entry: android/fpi/MtGpio.class

我已经求助于我读过的各种解决方案,但我在这里,仍在寻找可行的解决方案。

我尝试了什么?

  1. MultiDexEnable true;

  2. 在将第二个 aar 库添加到 grable 文件时,我尝试排除以下类,但仍然遇到相同的错误。

     compile (name: 'B', ext: 'aar'){
    exclude group: 'com.android.fpi', module: 'MtGpio'
    }
  3. 其他几个主要与 support-v4 yada yada 相关的解决方案

现在我正在向 Android 高手寻求帮助。提前致谢。

最佳答案

也许您会对 Resolved versions for app (22.0.0) and test app (21.0.3) differ 中的答案有所帮助

尝试设置

configurations.all {
resolutionStrategy {
force (name: 'A', ext: 'aar')
}
}

依赖项之前

关于java - 如何防止 Android Archive 库中的重复依赖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41651106/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com