【发布时间】:2015-11-26 18:49:54
【问题描述】:
我刚开始使用 Android Studio, 如果我无法正确解释情况,请原谅我。 但我会根据需要尝试更新详细信息。
在我的 gradle 项目中,我使用 JakeWarton DiskCache 和 Nineoldandroids 两者都作为 jar 文件添加到 app/libs 文件夹中。
此外,该位置还有一个图书馆项目 https://android-arsenal.com/details/1/122
repositories {
maven {
url "https://jitpack.io"
}
}
dependencies {
compile 'com.github.flavienlaurent:datetimepicker:0f5d399995'
}
我通过添加存储库和依赖项来使用它,如上所示。
当我尝试运行这个项目时,我得到以下错误
任务 ':app:packageAllDebugClassesForMultiDex' 执行失败。
java.util.zip.ZipException:重复条目:com/nineoldandroids/animation/Animator$AnimatorListener.class
我可以理解,由于我的应用程序有一份 Nineoldandroids.jar 副本,并且 lib-project 在编译时也需要它,因此存在某种问题。
我该如何解决这个冲突?
【问题讨论】:
-
您可以删除 Nineoldandroids.jar 并使用 compile 'com.nineoldandroids:library:2.4.0'
-
@Gabriele Mariotti 您的解决方案运行良好。对不起,我不能早点回复。但是我不得不问,如果有两个外部库使用一个公共的依赖 jar 文件打包作为其源代码的一部分。
-
可以在不同的模块中使用同一个jar(同一个版本)。这里的问题是您的库具有与 Nineoldandroids 的 maven 依赖项,而您的 jar 文件具有相同的库。如果没问题,我会将其报告为帮助其他用户的答案。
-
@Gabriele Mariotti 好的,您可以将其报告为答案。它确实解决了我的问题,再次感谢。
标签: android-studio gradle conflict nineoldandroids