Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android java.util.zip.ZipException:PackageAllDebugClassesForMultiIndex期间重复条目_Android_Android Gradle Plugin_Android Support Library_Android Multidex - Fatal编程技术网

Android java.util.zip.ZipException:PackageAllDebugClassesForMultiIndex期间重复条目

Android java.util.zip.ZipException:PackageAllDebugClassesForMultiIndex期间重复条目,android,android-gradle-plugin,android-support-library,android-multidex,Android,Android Gradle Plugin,Android Support Library,Android Multidex,我不知道这个错误是什么意思 Execution failed for task ':excelSior:packageAllDebugClassesForMultiDex'. > java.util.zip.ZipException: duplicate entry: android/support/v4/util/TimeUtils.class 我目前正在为我的库使用android-support-v4.jar dependencies { compile project(':

我不知道这个错误是什么意思

Execution failed for task ':excelSior:packageAllDebugClassesForMultiDex'.
> java.util.zip.ZipException: duplicate entry: android/support/v4/util/TimeUtils.class
我目前正在为我的库使用
android-support-v4.jar

dependencies {
    compile project(':addThisSDK')
    compile project(':centeredContentButton')
    compile project(':googleplayservices_lib')
    compile files('libs/adxtag2.4.6.jar')
    compile files('libs/android-support-v4.jar')
    compile files('libs/aws-android-sdk-1.7.1.1-debug.jar')
    compile files('libs/commons-lang-2.6.jar')
    compile files('libs/crittercism_v4_4_0_sdkonly.jar')
    compile files('libs/dd-plist.jar')
    compile files('libs/FiksuAndroidSDK_4.1.1.jar')
    compile files('libs/iqengines-sdk-barcode.jar')
    compile files('libs/irEventTracker-1.2.jar')
    compile files('libs/jolt-core-0.0.7.jar')
    compile files('libs/json-utils-0.0.7.jar')
    compile files('libs/jsoup-1.7.2.jar')
    compile files('libs/kooaba-api-v4-java.jar')
    compile 'com.android.support:multidex:1.0.0'
}
渐变同步期间不显示错误。就在我尝试运行应用程序时


有什么问题吗?

您现在可能已经解决了这个问题,但只是为了不让这个问题一直没有答案, 尝试将其添加到您的
构建中。gradle

configurations {
    all*.exclude group: 'com.android.support', module: 'support-v4'
}

简单地将Jar文件作为v7从dependencies gardle.project中删除
然后运行您的项目

我的理解是,对同一API有重复引用(可能不同的版本号)。从命令行构建时,调试应该相当容易

从命令行尝试
/gradlew yourBuildVariantName--debug

有问题的项目将是第一次失败。例如:

14:32:29.171 [INFO] [org.gradle.api.Task] INPUT: /Users/mydir/Documents/androidApp/BaseApp/build/intermediates/exploded-aar/theOffendingAAR/libs/google-play-services.jar

14:32:29.171 [DEBUG] [org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter] Finished executing task ':BaseApp:packageAllyourBuildVariantNameClassesForMultiDex'

14:32:29.172 [LIFECYCLE] [class org.gradle.TaskExecutionLogger] :BaseApp:packageAllyourBuildVariantNameClassesForMultiDex FAILED'
在上面的例子中,我在libs目录(theOffendingAAR)中包含的aar文件包括Google Play Services jar(是的,全部都是。是的,我知道。)文件,而我的BaseApp构建文件使用了位置服务:

compile 'com.google.android.gms:play-services-location:6.5.87'

您可以安全地从生成文件中删除有问题的项,清理并重新生成(必要时重复)。

检查您的依赖项版本,您必须有兼容的版本,特别注意com.google软件包,必须有相同的版本,如:

compile 'com.google.android.gms:play-services:8.3.0'
compile 'com.google.android.gms:play-services-maps:8.3.0'

这两个版本都是8.3.0,如果您有其他版本,编译将抛出该异常。

找出库依赖于支持v4,并将其排除

build.gradle
中的代码如下:

androidTestCompile('com.android.support.test.espresso:espresso-contrib:2.2.1') {
    // http://stackoverflow.com/a/30931887/5210
    exclude group: 'com.android.support', module: 'appcompat'
    exclude group: 'com.android.support', module: 'support-v4'
    exclude module: 'recyclerview-v7'
}
在我的情况下,库“espresso”有一个名为support-v4的jar,在我的项目“app”中有相同的support-v4,在导入espresso时排除support-v4


PS:似乎
编译项目
无法使用
排除

在重新导入旧的eclipse项目时,我也遇到了这种问题。它在项目中作为jar文件出现了一些旧的依赖关系

移除

编译文件树(目录:“libs”,包括:“*.jar”)

在渐变文件中

if (!project.hasProperty('gms_library_version')) {
        ext.gms_library_version = '8.6.0'
   }
并在gradle文件中添加依赖项


它适用于我。

用于Expose.class错误,即

java.util.zip.ZipException:重复条目:com/google/gson/annotations/Expose.class

使用下面的代码

configurations {
    all*.exclude  module: 'gson'
}
在我的例子中,在build.gradle中设置
multiDexEnable=true
后出现了提到的“重复条目”错误

为了完全解决这个错误,首先看一看(特别是“使用Gradle为多索引配置应用程序”)

此外,在Android Studio中使用ctrl+n搜索导致“重复条目”错误的类的出现。确定包含重复项的模块和依赖项,并将其从生成中排除,例如:

compile ('org.roboguice:roboguice:2.0') {
    exclude module: 'support-v4'
}

我必须尝试多个模块标签,直到它工作。排除“support-v4”可解决与“java.util.zip.zipeException:重复条目:android/support/v4/*”相关的问题。

错误:任务执行失败:app:transformClassesWithJarMergingForDebug'com.android.build.api.transform.TransformException java.util.zip.zipeException重复条目com/google/gson/annotations/Expose.class

以下是我所做的:

1) 删除gson-2.5.jar文件。
2) 配置{all*.exclude module:'gson-2.5'}

您需要检查是否已插入v4库和编译库?您不能在应用程序或程序中重复库

删除重复库,以便只保留一个V4

在应用程序目录
build.gradle
文件中 添加此命令:

android{


    configurations {
        all*.exclude group: 'com.android.support', module: 'support-v4'
        all*.exclude group: 'com.android.support', module: 'support-annotations'
    }

}

这对我有用!你可以试试

我遇到了这个问题,因为我在libs中手动复制了jar,并在gradle文件中提到了依赖关系。您还可以在项目结构中检查同一jar文件是否复制到任何其他文件夹(如libs)或项目文件夹中

升级android SDK后,我也遇到了同样的问题。我能够在
buildToolsVersion'23.0.1'
中运行该应用程序,当我更改为
buildToolsVersion'24.0.3'


我通过使用
compilesdkkversion24
将java版本从1.7更新到1.8解决了这个问题。这个问题花了我一整天的时间。我最终将firebase ui库版本从2.0.0降级到1.2.0,并在项目级build.gradle文件中添加了以下代码:

allprojects {
    repositories {
        jcenter()

        // Add the following code to your project level build.gradle
        maven {
            url 'https://maven.fabric.io/public'
        }
    }
}

这是因为您已经添加了一个库,并且多次给出了它对模块的依赖关系

在我的例子中,我添加了一个库作为模块和gradle依赖项

删除添加库的一个源(我删除了gradle依赖项)解决了我的问题。

尝试以下操作:

android {
configurations {
        all*.exclude  module: 'PhotoView'  //去除重复依赖库
    }
}

我也有这个问题,因为我编译了'com.android.support:appcompat-v7:24.0.0-alpha1',但我添加了recyclerview library compile'com.android.support:recyclerview-v7:24.0.2'…我将版本更改为与compat-like相同的版本(24.0.2 intead of 24.0.0)

我得到了答案..可能对某人有帮助。

在我的例子中,在build.gradle中设置multidexenable=true后出现了提到的“重复条目”错误

我得到的确切错误如下:

Error:Execution failed for task 
':android:transformClassesWithJarMergingForDebug'.
> com.android.build.api.transform.TransformException: 
java.util.zip.ZipException: duplicate entry: 
com/google/android/gms/internal/zzqx.class
所以,我首先在Android Studio中使用ctrl+n搜索导致“重复条目”错误的类,然后搜索com/google/Android/gms/internal/zzqx.class,然后它显示了gms类的两个条目,一个版本为8.4.0,一个版本为11.6.0

为了修复它,我使用了11.6.0,这是一个修复的例子

早些时候

    compile "com.google.android.gms:play-services-games:11.6.0"
    compile "com.google.android.gms:play-services-auth:8.4.0"
    compile "com.google.android.gms:play-services-ads:11.6.0"
之后


重建已修复。

在我的情况下,确切错误如下

“:android:transformClassesWithJarMergingForDebug”

com.android.build.api.transform.TransformException:java.util.zip.zipeException:重复条目:com/google/android/gms/internal/zzqx.class

我使用的是另一个版本的谷歌API,即在一个模块gradle文件中

if (!project.hasProperty('gms_library_version')) {
        ext.gms_library_version = '8.6.0'
   }
但在其他模块版本中
   compile "com.google.android.gms:play-services-ads:11.6.0"
    compile "com.google.android.gms:play-services-games:11.6.0"
    compile "com.google.android.gms:play-services-auth:11.6.0"
apply plugin: 'kotlin-android'