当前位置: 首页 > 知识库问答 >
问题:

错误:任务': app: transformClassesSusDexForDebug'执行失败

齐鸿光
2023-03-14

错误

错误:任务“app:transformClassesWithDexForDebug”的执行失败。com.android.build.transform.api。TransformException:com.android.ide.common.process。ProcessException:org.gradle.process.internal。ExecException:进程“command”/usr/lib/jvm/java-8-oracle/bin/java”结束,退出值为非零1

我的应用程序gradle文件:

apply plugin: 'com.android.application'
apply plugin: 'com.google.gms.google-services'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.1"
    defaultConfig {
        applicationId 'Hidden application ID'
        minSdkVersion 15
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
        multiDexEnabled true
    }
    buildTypes {
        debug {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
        release {
            minifyEnabled true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    lintOptions {
        disable 'InvalidPackage'
    }
    packagingOptions {
        exclude 'META-INF/services/javax.annotation.processing.Processor'
    }
    productFlavors {
    }
}

repositories {
    mavenCentral()
}

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile 'com.android.support:multidex:1.0.1'
    compile 'com.android.support:appcompat-v7:23.1.1'
    compile 'com.android.support:design:23.1.1'
    compile 'com.android.support:cardview-v7:23.1.1'
    compile 'com.jakewharton:butterknife:7.0.1'
    compile 'com.mcxiaoke.volley:library-aar:1.0.0'
    compile 'com.google.android.gms:play-services:8.1.0'
    compile 'com.facebook.android:facebook-android-sdk:4.7.0'
    compile 'com.googlecode.libphonenumber:libphonenumber:7.2.1'
    compile 'com.getbase:floatingactionbutton:1.10.1'
    compile 'com.android.support:preference-v7:23.1.1'
}

在调试时,如果我将mini fyEnabledtrue设置为true,那么它就会编译。但是,我无法调试我的应用程序

我检查了另一个问题:任务执行失败:app:transformClassesWithDexForDebug,同时为Android实现Google登录,但只有一个答案,不幸的是,实现它并不能解决问题。

AFAIK,错误是由于添加了太多的Gradle依赖项引起的,但我可能是错的(我真的希望是错的,因为所有这些包都非常重要!

请帮助我解决此错误。非常感谢!

共有3个答案

孙志
2023-03-14

尝试将多元数据添加到您的应用程序 build.gradle 文件中。

  defaultConfig {
    multiDexEnabled true
}
凌炜
2023-03-14

尝试

dexOptions {
    javaMaxHeapSize "4g"
    preDexLibraries = false
}

我不知道原因。关于preDexLibrary:https://sites.google.com/a/android.com/tools/tech-docs/new-build-system/tips

根据@lgdroid57:

以下资源应该有助于解释此代码的功能:链接(http://google.github.io/android-gradle-dsl/current/com.android.build.gradle.internal.dsl.DexOptions.html)属性|Description javaMaxHeapSize|在调用dx时设置-JXmx*值。格式应遵循1024M模式。preDexLibraries |是否预索引库。这可以改进增量构建,但干净构建可能会更慢。

濮君植
2023-03-14

只需更正谷歌播放服务依赖关系:

您将在项目中包含所有游戏服务。只添加您想要的。

例如,如果您只使用地图和 g 登录,则更改

 compile 'com.google.android.gms:play-services:8.1.0'

compile 'com.google.android.gms:play-services-maps:8.1.0'
compile 'com.google.android.gms:play-services-plus:8.1.0'

来自文档:

在6.5之前的Google Play服务版本中,您必须将整个API包编译到您的应用程序中。在某些情况下,这样做会使您的应用程序中的方法数量(包括框架API、库方法和您自己的代码)更难保持在65,536限制以下。

从版本6.5开始,您可以有选择地将Google Play服务API编译到您的应用程序中。例如,要仅包含Google Fit和Android Wear API,请在构建中替换以下行。gradle文件:<br>使用以下行编译'com.google.android.gms:play services:8.3.0'<br>:

编译' com . Google . Android . GMS:play-services-fitness:8 . 3 . 0 ' < br >编译' com . Google . Android . GMS:play-services-wearable:8 . 3 . 0 '

完整的列表可以在这里找到。

 类似资料: