java.util.zip.ZipException:带有spring框架

时间:2015-09-08 05:59:05

标签: android-studio duplicates android-gradle android-support-library multidex

我正在android studio中使用spring框架开发android应用程序, 我有这个错误

Execution failed for task ':app:packageAllDebugClassesForMultiDex'.
> java.util.zip.ZipException: duplicate entry: org/springframework/beans/BeansException.class

我读了一些问题/答案,但我找不到解决问题的方法, 例: java.util.zip.ZipException: duplicate entry during packageAllDebugClassesForMultiDex

我的build.brandle是

android {
    compileSdkVersion 22
    buildToolsVersion "22.0.1"

    defaultConfig {
        applicationId "com.example.simone.oauth"
        minSdkVersion 15
        targetSdkVersion 22
        versionCode 1
        versionName "1.0"
        multiDexEnabled true
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    packagingOptions {
        exclude 'META-INF/ASL2.0'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/license.txt'
        exclude 'META-INF/NOTICE'
        exclude 'META-INF/notice.txt'
    }
}

configurations.compile {
    exclude module: 'spring-core'
    exclude module: 'spring-web'
    exclude module: 'commons-logging'

}


dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile ('com.android.support:appcompat-v7:22.2.0')
    compile ('org.springframework.android:spring-android-rest-template:1.0.1.RELEASE')
    compile 'org.springframework.android:spring-android-auth:1.0.1.RELEASE'
    compile 'org.springframework.security:spring-security-crypto:3.1.3.RELEASE'
    compile 'org.springframework.social:spring-social-config:1.1.0.RELEASE'
    compile 'org.springframework.social:spring-social-core:1.1.2.RELEASE'
    compile 'org.springframework.social:spring-social-google:1.0.0.RELEASE'
    compile 'org.codehaus.jackson:jackson-mapper-asl:1.9.11'
}

如何排除此错误?

1 个答案:

答案 0 :(得分:2)

我遇到了与multidex spring-core几乎相同的问题,我解决了这个问题

compile ('org.springframework.security:spring-security-crypto:3.1.4.RELEASE')
        {
            exclude group :'org.springframework', module: 'spring-core'
        }

所以在你的情况下你必须排除spring beans