在磁盘发生故障后重新安装Android Studio之后,我更新了项目的依赖关系以反映API 21.这引入了multiDex的使用,因此我的build.gradle现在包含:TransformException GoogleCloudMessaging的重复条目
compileSdkVersion 21
buildToolsVersion '21.1.2'
defaultConfig {
minSdkVersion 17
targetSdkVersion 21
multiDexEnabled true
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile ('com.android.support:support-v4:21.0.3') {
exclude group: 'com.google.android.gms'
}
compile ('com.android.support:appcompat-v7:21.0.3') {
exclude group: 'com.google.android.gms'
}
compile ('com.android.support:multidex:1.0.0') {
exclude group: 'com.google.android.gms'
}
compile 'com.google.android.gms:play-services-gcm:7.+'
compile files('libs/android-async-http-1.4.4.jar')
}
请注意我不想在此阶段更新到API 23,以便与姐妹应用程序保持一致。
我不断收到以下错误,当我尝试建立:
执行失败的任务“:应用程序:transformClassesWithJarMergingForDebug”。 com.android.build.api.transform.TransformException:java.util.zip.ZipException:重复的条目:COM /谷歌/安卓/ GMS/GCM/Google云端通讯$ 1.class
我加入了“排除组'只有在尝试解决重复时才依赖于依赖关系。
清理项目没有什么区别(我试过了终端和Studio菜单)。
从./gradlew app:dependencies
的输出如下:
+--- com.android.support:multidex:1.0.1
+--- com.android.support:support-v4:21.0.3 -> 22.2.0
| \--- com.android.support:support-annotations:22.2.0
+--- com.android.support:appcompat-v7:21.0.3
| \--- com.android.support:support-v4:21.0.3 -> 22.2.0 (*)
+--- com.android.support:multidex:1.0.0 -> 1.0.1
\--- com.google.android.gms:play-services-gcm:7.+ -> 7.8.0
\--- com.google.android.gms:play-services-base:7.8.0
\--- com.android.support:support-v4:22.2.0 (*)
道歉,如果这是另一个问题SO重复,但我看其他问题,他们并没有帮助,因为我不能请参阅重复引入的位置。任何人都可以告诉我重复的来源吗?
我也面临同样的问题,请检查链接http://stackoverflow.com/questions/37874487/java-util-zip-zipexception-duplicate-entrycom-google-android-gms-auth-userreco – kavie