当前位置: 首页 > 知识库问答 >
问题:

构建android apk失败错误:zipexception:重复条目:org/objectweb/asm/annotationvisitor.class

双恩
2023-03-14

以前,这个项目在android Studio1.5中运行良好,但在更新android Studio2.1.1后,无法构建apk文件错误消息:Error:任务':app:TransformClassesWithJarmergingForRelease'的执行失败。

com.android.build.api.transform.transformException:java.util.zip.zipException:重复条目:org/objectweb/asm/annotationvisitor.class

在尝试构建release apk的情况下,错误是:错误:任务':app:TransformClassesWithJarmergingForRelease'的执行失败。

apply plugin: 'com.android.application'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.3"
    useLibrary 'org.apache.http.legacy'
    defaultConfig {
//        generatedDensities = []
        applicationId "com.view9.lacuna"
        minSdkVersion 15
        targetSdkVersion 23
        versionCode 3
        versionName "3.0"
        multiDexEnabled true
        signingConfig signingConfigs.newSigningConfig
    }
    dexOptions {
        javaMaxHeapSize "4g"
        jumboMode = true
        incremental true
        preDexLibraries = false

    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            debuggable false
            signingConfig signingConfigs.newSigningConfig
        }
        debug {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            debuggable true
        }
    }
    packagingOptions {
        exclude 'META-INF/NOTICE.txt'
        exclude 'META-INF/NOTICE'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/LICENSE.txt'
        exclude 'META-INF/DEPENDENCIES'
        exclude 'META-INF/DEPENDENCIES.txt'
        exclude 'META-INF/BCKEY.DSA'
        exclude 'AUTHORS'
        exclude 'META-INF/BCKEY.SF'
        exclude 'META-INF/services/javax.annotation.processing.Processor'
    }
    aaptOptions {
        additionalParameters "--no-version-vectors"
    }
    lintOptions {
        checkReleaseBuilds false
        // Or, if you prefer, you can continue to check for errors in release builds,
        // but continue the build even when errors are found:
        abortOnError false

        // set to true to turn off analysis progress reporting by lint
        quiet false
        // if true, stop the gradle build if errors are found
        abortOnError true
        // if true, only report errors
        ignoreWarnings false
        // turn off checking the given issue id's
        disable 'TypographyFractions', 'TypographyQuotes'
        // if true, generate a text report of issues (false by default)
        textReport true
    }
    productFlavors {
    }
}

repositories {
    maven { url "https://jitpack.io" }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.tools.build:gradle:2.0.0'
    compile('com.android.support:appcompat-v7:23.0.0') {
        exclude module: 'support-v4'
    }
    compile 'com.google.android.gms:play-services:9.0.2'
    compile 'it.sephiroth.android.library.horizontallistview:hlistview:1.2.2'
    compile 'com.squareup.picasso:picasso:2.5.2'
    compile 'com.mcxiaoke.volley:library-aar:1.0.0'
    compile 'com.android.support:design:23.0.0'
    compile 'com.android.support:recyclerview-v7:23.0.0'
    compile 'fr.baloomba:viewpagerindicator:2.4.2'
    compile 'com.pkmmte.view:circularimageview:1.1'
    compile 'com.github.clans:fab:1.5.5'
    compile 'com.github.jorgecastilloprz:fabprogresscircle:1.01@aar'
    compile 'commons-validator:commons-validator:1.4.0'
    compile 'it.neokree:MaterialTabs:0.11'
    compile 'se.emilsjolander:StickyScrollViewItems:1.1.0'
    compile('org.apache.httpcomponents:httpmime:4.4.1') {
        exclude module: 'httpclient'
    }
    compile 'org.apache.httpcomponents:httpclient-android:4.3.5'
    compile('com.github.afollestad.material-dialogs:core:0.8.5.7@aar') {
        transitive = true
    }
    compile 'com.squareup:otto:1.3.5'
    compile 'com.android.support:multidex:1.0.1'

}

共有1个答案

龚同
2023-03-14

我也为这个问题纠结了几天,一个字一个字地犯同样的错误。我通读了所有我能找到的答案,并不断地在我的gradle文件中添加东西,但似乎没有任何效果。于是,我反其道而行之,简化了我的问题。

1.)从一个新的模块开始,除了Android Studio在创建时添加的东西之外,什么也没有。调试应用程序并构建了一个签名的APK。这将成为我的基线。

2.)开始一个接一个地添加我需要的库,调试到设备,并在每个库之后创建一个签名的apk。基本前提是,由于基线调试和构建都很好,任何破坏这种能力的库都是罪魁祸首。

3.)终于找到了我这个案子的罪魁祸首:

compile 'com.google.gms:google-services:2.1.2'

如果包含了这一行,应用程序将进行调试,但不会构建一个签名的发布apk,所以我删除了这一行,并再次尝试,它按预期工作。

经过测试与这个配置,它似乎不需要它,不为什么它在那里,如果它不需要,但这是什么为我工作。显然,您不会有同样的问题,但我敢说,这与谷歌库有关。希望这能有所帮助!

 类似资料: