ZipException:重复条目:com.nineoldandroids
ZipException: duplicate entry : com.nineoldandroids
我使用 gradle 依赖项在我的项目中添加了 ResideMenu。
但我遇到了这个问题:
Error:Execution failed for task
':app:transformClassesWithJarMergingForDebug'.
com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry:
com/nineoldandroids/animation/Animator$AnimatorListener.class
当我检查外部库时,我发现 library-2.4.0 和 resideMenu-1.6 都包含 com.nineoldandroids :
我在 Whosebug 上解决了几乎所有类似的问题并尝试了解决方案。任何人都可以告诉我需要做什么来消除这个问题。
以下是我在项目中使用的依赖项:
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.android.support:appcompat-v7:24.2.1'
compile 'com.jakewharton:butterknife:7.0.1'
compile 'com.squareup.picasso:picasso:2.5.2'
compile 'com.pnikosis:materialish-progress:1.7'
compile 'com.loopj.android:android-async-http:1.4.9'
compile 'com.google.code.gson:gson:2.6.2'
compile 'com.wrapp.floatlabelededittext:library:0.0.6'
compile 'com.android.support:multidex:1.0.1'
compile 'com.specyci:residemenu:1.6+'
}
您可以从您的依赖项中排除 nineoldandroids。即:
更改如下:
compile 'com.specyci:residemenu:1.6+'
有了这个:
compile ('com.specyci:residemenu:1.6+') {
exclude group: 'com.nineoldandroids', module: 'library'
}
注意: 要列出所有子依赖关系树,请使用 gradle dependencies
或 gradlew dependencies
命令。然后您可以获得要排除的库的正确组名和模块名。
使用另一个库添加排除命令解决了问题:
compile ('com.wrapp.floatlabelededittext:library:0.0.6'){
exclude group: 'com.nineoldandroids', module: 'library' }
compile ('com.specyci:residemenu:1.6+') {
exclude group: 'com.nineoldandroids', module: 'library' }
您必须先将 ResideMenu 库手动添加到您的项目中。
然后从 ResideMenu 库中打开 Gradle 文件。
在依赖项上,清除编译文件树行 (dir: 'libs', include: ['* .jar']) 并替换下面的行:
编译 'com.nineoldandroids:library:2.4.0'
我使用 gradle 依赖项在我的项目中添加了 ResideMenu。 但我遇到了这个问题:
Error:Execution failed for task ':app:transformClassesWithJarMergingForDebug'.
com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: com/nineoldandroids/animation/Animator$AnimatorListener.class
当我检查外部库时,我发现 library-2.4.0 和 resideMenu-1.6 都包含 com.nineoldandroids :
我在 Whosebug 上解决了几乎所有类似的问题并尝试了解决方案。任何人都可以告诉我需要做什么来消除这个问题。
以下是我在项目中使用的依赖项:
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.android.support:appcompat-v7:24.2.1'
compile 'com.jakewharton:butterknife:7.0.1'
compile 'com.squareup.picasso:picasso:2.5.2'
compile 'com.pnikosis:materialish-progress:1.7'
compile 'com.loopj.android:android-async-http:1.4.9'
compile 'com.google.code.gson:gson:2.6.2'
compile 'com.wrapp.floatlabelededittext:library:0.0.6'
compile 'com.android.support:multidex:1.0.1'
compile 'com.specyci:residemenu:1.6+'
}
您可以从您的依赖项中排除 nineoldandroids。即:
更改如下:
compile 'com.specyci:residemenu:1.6+'
有了这个:
compile ('com.specyci:residemenu:1.6+') {
exclude group: 'com.nineoldandroids', module: 'library'
}
注意: 要列出所有子依赖关系树,请使用 gradle dependencies
或 gradlew dependencies
命令。然后您可以获得要排除的库的正确组名和模块名。
使用另一个库添加排除命令解决了问题:
compile ('com.wrapp.floatlabelededittext:library:0.0.6'){
exclude group: 'com.nineoldandroids', module: 'library' }
compile ('com.specyci:residemenu:1.6+') {
exclude group: 'com.nineoldandroids', module: 'library' }
您必须先将 ResideMenu 库手动添加到您的项目中。 然后从 ResideMenu 库中打开 Gradle 文件。 在依赖项上,清除编译文件树行 (dir: 'libs', include: ['* .jar']) 并替换下面的行: 编译 'com.nineoldandroids:library:2.4.0'