生成签名 APK 时出错:重复条目:android/support/v7/util/ThreadUtil$
Error while generating signed APK: duplicate entry: android/support/v7/util/ThreadUtil$
我为此花费了无数时间,通读了大量 SO 帖子,但似乎找不到解决方案。当我生成签名的 APK 时,我不断收到
Error:Execution failed for task ':app:transformClassesWithJarMergingForRelease'.
com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: android/support/v7/util/ThreadUtil$BackgroundCallback.class
我已经尝试 删除不同的 JAR 以查看可能重复的内容,但无济于事。 android-support-v7-recyclerview-23.1.1.jarseemed 对我来说就像罪魁祸首,所以我删除了它并且不再收到错误。但是,相反,我的应用程序开始需要很长时间才能生成,CPU 使用率达到 350%,然后 gradle 超时并出现“OutOfMemory”异常。
这是我的 build.gradle 文件。
apply plugin: 'com.android.application'
repositories {
mavenCentral()
maven(){
url "https://oss.sonatype.org/content/repositories/snapshots"
}
flatDir {
dirs 'libs'
}
}
android {
compileSdkVersion 25
buildToolsVersion "23.0.3"
defaultConfig {
applicationId "com.me.myapp"
minSdkVersion 13
targetSdkVersion 25
multiDexEnabled true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
}
dependencies {
compile 'com.android.support:support-v4:25.1.0'
compile 'com.google.android.gms:play-services-analytics:10.0.1'
compile 'com.android.support:appcompat-v7:25.1.0'
compile 'com.google.android.gms:play-services-ads:10.0.1'
compile 'com.google.android.gms:play-services-location:10.0.1'
compile files('libs/android-support-v7-recyclerview-23.1.1.jar')
compile files('libs/applovin-6.3.0.jar')
compile files('libs/appodeal-1.15.8.jar')
compile files('libs/chartboost-6.5.1.jar')
compile files('libs/flurry-analytics-6.5.0.jar')
compile files('libs/google-http-client-1.19.0.jar')
compile files('libs/google-http-client-android-1.19.0.jar')
compile files('libs/google-http-client-gson-1.19.0.jar')
compile files('libs/google-http-client-jackson2-1.19.0.jar')
compile files('libs/gson-2.1.jar')
compile files('libs/guava-18.0.jar')
compile files('libs/jackson-core-2.1.3.jar')
compile files('libs/java-api-core-2.10.10.jar')
compile files('libs/kinvey-android-2.10.10.jar')
compile files('libs/my-target-4.5.10.jar')
compile files('libs/unity-ads-2.0.4.jar')
compile files('libs/yandex-metrica-2.51.jar')
compile project(':cheetah-mobile-3.4.7')
compile 'com.android.support:multidex:1.0.1'
compile 'com.github.dexafree:materiallist:3.2.1'
compile 'jp.wasabeef:recyclerview-animators:2.0.1'
compile ('com.github.worker8:tourguide:1.0.17-SNAPSHOT@aar'){
transitive=true
}
}
apply plugin: 'com.google.gms.google-services'
提前致谢!
太开心了!终于修好了!
我从 gradle 中删除了 'libs/android-support-v7-recyclerview-23.1.1.jar',并在 build.gradle 的 "android" 中添加了以下行。
dexOptions {
javaMaxHeapSize "4g"
}
我从 this post 那里得到了答案。
我为此花费了无数时间,通读了大量 SO 帖子,但似乎找不到解决方案。当我生成签名的 APK 时,我不断收到
Error:Execution failed for task ':app:transformClassesWithJarMergingForRelease'.
com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: android/support/v7/util/ThreadUtil$BackgroundCallback.class
我已经尝试 删除不同的 JAR 以查看可能重复的内容,但无济于事。 android-support-v7-recyclerview-23.1.1.jarseemed 对我来说就像罪魁祸首,所以我删除了它并且不再收到错误。但是,相反,我的应用程序开始需要很长时间才能生成,CPU 使用率达到 350%,然后 gradle 超时并出现“OutOfMemory”异常。
这是我的 build.gradle 文件。
apply plugin: 'com.android.application'
repositories {
mavenCentral()
maven(){
url "https://oss.sonatype.org/content/repositories/snapshots"
}
flatDir {
dirs 'libs'
}
}
android {
compileSdkVersion 25
buildToolsVersion "23.0.3"
defaultConfig {
applicationId "com.me.myapp"
minSdkVersion 13
targetSdkVersion 25
multiDexEnabled true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
}
dependencies {
compile 'com.android.support:support-v4:25.1.0'
compile 'com.google.android.gms:play-services-analytics:10.0.1'
compile 'com.android.support:appcompat-v7:25.1.0'
compile 'com.google.android.gms:play-services-ads:10.0.1'
compile 'com.google.android.gms:play-services-location:10.0.1'
compile files('libs/android-support-v7-recyclerview-23.1.1.jar')
compile files('libs/applovin-6.3.0.jar')
compile files('libs/appodeal-1.15.8.jar')
compile files('libs/chartboost-6.5.1.jar')
compile files('libs/flurry-analytics-6.5.0.jar')
compile files('libs/google-http-client-1.19.0.jar')
compile files('libs/google-http-client-android-1.19.0.jar')
compile files('libs/google-http-client-gson-1.19.0.jar')
compile files('libs/google-http-client-jackson2-1.19.0.jar')
compile files('libs/gson-2.1.jar')
compile files('libs/guava-18.0.jar')
compile files('libs/jackson-core-2.1.3.jar')
compile files('libs/java-api-core-2.10.10.jar')
compile files('libs/kinvey-android-2.10.10.jar')
compile files('libs/my-target-4.5.10.jar')
compile files('libs/unity-ads-2.0.4.jar')
compile files('libs/yandex-metrica-2.51.jar')
compile project(':cheetah-mobile-3.4.7')
compile 'com.android.support:multidex:1.0.1'
compile 'com.github.dexafree:materiallist:3.2.1'
compile 'jp.wasabeef:recyclerview-animators:2.0.1'
compile ('com.github.worker8:tourguide:1.0.17-SNAPSHOT@aar'){
transitive=true
}
}
apply plugin: 'com.google.gms.google-services'
提前致谢!
太开心了!终于修好了!
我从 gradle 中删除了 'libs/android-support-v7-recyclerview-23.1.1.jar',并在 build.gradle 的 "android" 中添加了以下行。
dexOptions {
javaMaxHeapSize "4g"
}
我从 this post 那里得到了答案。