app:transformClassesWithJarMergingForDebug无法解析

时间:2017-03-03 07:50:13

标签: android

每当我尝试为应用创建APK时,我都会遇到此错误。

  

错误:任务':app:transformClassesWithJarMergingForDebug'的执行失败。   com.android.build.api.transform.TransformException:java.util.zip.ZipException:重复条目:android / support / v4 / text / TextUtilsCompat.class

该应用程序在Android模拟器中运行,但是当我尝试构建一个apk时,我得到了这个错误。 我不知道该改变什么

这是gradle代码

apply plugin: 'com.android.application'

android {
compileSdkVersion 23
buildToolsVersion "25.0.2"

defaultConfig {
    applicationId "com.companyname.gamename"
    minSdkVersion 11
    targetSdkVersion 23
    multiDexEnabled true

    ndk {
        moduleName "player_shared"
    }
}

sourceSets {
    main {
        jni.srcDirs = []
    }
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
    }
}
}

dependencies {
compile 'com.google.android.gms:play-services:+'
compile files('libs/dagger-1.2.2.jar')
compile files('libs/javax.inject-1.jar')
compile files('libs/support-v4-19.0.1.jar')
compile files('libs/nineoldandroids-2.4.0.jar')
}

我试图清理重建一个运行该项目,但我仍然有同样的问题, 我已经读过这是依赖性问题。但无法想象要删除的人。

1 个答案:

答案 0 :(得分:1)

首先,永远不要使用加号依赖。

services:+'

也不要编译所有Play服务,只设置你真正需要的服务。

https://developers.google.com/android/guides/setup#split

其次,停止使用jar文件并使用Maven Central(或这些库的支持文档)找到正确的库,并使用另一种方式通过Gradle进行编译。

您的jar文件有重叠的类,因此您有错误

虽然你正在......

  • Dagger 1正在弃用Dagger 2
  • NineoldAndroids已停止维护,因此最好找到其他方式来使用您需要的代码
  • 您的支持库需要与compileSdk版本匹配