我有错误之类的 “错误:任务执行失败':app:transformClassesWithJarMergingForDebug'。
com.android.build.api.transform.TransformException:java.util.zip.ZipException:重复条目:com / google / android / gms / internal / zzpm $ zza $ zza.class“
我该怎么做才能消除此错误
gradle这个
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "23.0.2"
defaultConfig {
applicationId "com.example.user.merchant"
minSdkVersion 15
targetSdkVersion 23
versionCode 1
versionName "1.0"
multiDexEnabled true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.2.0'
compile 'com.android.support:design:23.2.0'
compile 'com.android.support:support-v4:23.2.0'
compile 'com.android.volley:volley:1.0.0'
compile 'com.google.android.gms:play-services-appindexing:8.4.0'
compile 'com.google.android.gms:play-services-gcm:8.4.0'
//compile files('libs/google-play-services.jar')
}
答案 0 :(得分:5)
@Vaiden说问题是:
“您似乎至少有一个已与GMS捆绑在一起的库”
每次遇到重复输入错误时 ./gradlew app:dependencies
,并确保没有相同模块的重复版本。例如:在我的情况下,我有:
compile 'com.google.android.gms:play-services-gcm:9.0.0'
当我尝试在项目中使用firebase时,我将其添加为:
compile 'com.google.firebase:firebase-core:9.+'
compile 'com.google.firebase:firebase-messaging:9.+'
这导致我的应用程序崩溃导致当我导航到:app > build > intermediates > exploded-aar > com.google.android.gms
其中一个文件夹(play-services-basement)拉出版本9.4.0而不是9.0.0,所以我做的是取消版本通过添加firebase像:
compile 'com.google.firebase:firebase-core:9.0.0'
compile 'com.google.firebase:firebase-messaging:9.0.0'
理论上,你可以通过将firebase推到9.4.0
来解决这个问题。
最重要的是尝试了解哪些内容是您的应用程序引入应用程序并检查“WHO”是否向应用程序引入了相同的内容,一旦您到达那里尝试设置该重复项的特定版本依赖性。强>
答案 1 :(得分:0)
根据此forum,尝试将C:\ Program Files \ Android \ Android Studio \ gradle \中的gradle更改为gradle-2.10。此外,设计为在Android设备上运行的程序似乎不太可能不需要所有的jar。尝试删除其中一些。
检查这个相关的SO问题:
答案 2 :(得分:0)
您似乎至少有一个已与GMS捆绑在一起的库。
你的gradle构建文件中所述的所有依赖项都没有它,因此罪魁祸首可能是libs目录中的库jar文件。所以要么你的libs目录中有东西你不应该放在那里,或者在其中捆绑了GMS的库。
您记得删除libs/google-play-services.jar
吗?