错误:任务执行失败

时间:2017-09-08 14:25:51

标签: java android android-gradle telegram

当我在Android studio中使用Telegram的源代码时,我遇到了这个问题。所以我使用android studio预览版3.0.0 beta 2,gradle 4.1-all.zip,mainsdk:15。 我做了一切,但它没有正常工作。

错误是:

  

错误:任务执行失败:   TMessagesProj:transformDexArchiveWithExternalLibsDexMergerForDebug。   java.lang.RuntimeException:java.lang.RuntimeException:com.android.builder.dexing.DexArchiveMergerException:无法合并   DEX

build.gradle 文件为:

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.0-beta4'
    }
}
apply plugin: 'com.android.application'

repositories {
    mavenCentral()
}

dependencies {
    compile 'com.android.support:support-v4:21.0.+'
    compile 'com.google.android.gms:play-services:3.2.+'
    compile 'net.hockeyapp.android:HockeySDK:3.5.+'
    compile 'com.googlecode.mp4parser:isoparser:1.0.+'
    compile 'com.android.support:recyclerview-v7:+'
}

android {
    compileSdkVersion 21
    buildToolsVersion '26.0.0'

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_7
        targetCompatibility JavaVersion.VERSION_1_7
    }

    signingConfigs {
        debug {
            storeFile file("config/debug.keystore")
        }

        release {
            storeFile file("config/release.keystore")
            storePassword RELEASE_STORE_PASSWORD
            keyAlias RELEASE_KEY_ALIAS
            keyPassword RELEASE_KEY_PASSWORD
        }
    }

    buildTypes {
        debug {
            debuggable true
            jniDebuggable true
            signingConfig signingConfigs.debug
        }

        release {
            debuggable false
            jniDebuggable false
            //signingConfig signingConfigs.release
        }

        foss {
            debuggable false
            jniDebuggable false
            signingConfig signingConfigs.release
        }
    }

    sourceSets.main {
        jniLibs.srcDir 'libs'
        jni.srcDirs = [] //disable automatic ndk-build call
    }

    sourceSets.debug {
        manifest.srcFile 'config/debug/AndroidManifest.xml'
    }

    sourceSets.release {
        manifest.srcFile 'config/release/AndroidManifest.xml'
    }

    sourceSets.foss {
        manifest.srcFile 'config/foss/AndroidManifest.xml'
    }

    lintOptions {
        checkReleaseBuilds false
        abortOnError false
    }

    defaultConfig {
        applicationId "org.telegram.plus"
        minSdkVersion 15
        targetSdkVersion 21
        versionCode 458
        versionName "2.5.2.1"

    }
}

所以gradle-wrapper.propertiesservices.gradle.org/distributions/gradle-4.1-all.zip

2 个答案:

答案 0 :(得分:0)

尝试删除该行:

compile 'com.google.android.gms:play-services:3.2.+'

如果有效。将其替换为您需要的游戏服务的特定部分,例如:

compile 'com.google.android.gms:play-services-gcm:11.2.0'

用于Google Cloud Messaging。

答案 1 :(得分:0)

尝试以下它为我工作

  • 删除项目中的./gradle文件夹
  • 删除所有构建文件夹和gradle缓存。我运行了以下命令:

基于 Dex error On Android Studio 3.0 Beta4