android - transformClassesWithDexForDebug 以非零退出值 3 失败

标签 android gradle android-multidex

我正在编译 multidex 项目,而 gradle 给了我这个:

Execution failed for task ':Project:transformClassesWithDexForLiteDebug'.
> com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command '/Library/Java/JavaVirtualMachines/jdk1.8.0_31.jdk/Contents/Home/bin/java'' finished with non-zero exit value 3

我想这是因为 gradle 内存不足并且有解决方案要添加:
dexOptions {
    javaMaxHeapSize "4g"
}

但就我而言,我从 gradle 得到另一个错误:Cannot resolve symbol 'javaMaxHeapSize' .

它只是不编译。
非常感谢任何帮助!

最佳答案

对我来说,如果你有这种错误,那是因为你放错了这个 dexOptions :

你要做的就是把它作为android的 child 在你的模块(我猜叫 app )gradle 文件中。

像这样:

android {
    signingConfigs {

    }
    compileSdkVersion 23
    buildToolsVersion "23.0.1"
    defaultConfig {

    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            signingConfig signingConfigs.Lolo

        }
        debug{

        }
    }
    dexOptions {
        javaMaxHeapSize "4g"
    }
}

关于android - transformClassesWithDexForDebug 以非零退出值 3 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35827797/

相关文章:

android - 将 Tween 与逐帧动画相结合

java - 如何将用户注册到 firebase 注册中?

android - 如何将库发布到您的Android Studio项目?

android - 使用 HTML 标记样式,它在 strings.xml 中不起作用

android - PowerManager.goToSleep() 出现问题

Android Studio Gradle 构建风格

gradle - 在使用 gradle 的多项目 java 代码库上使用 sonarRunner,会跳过一个项目的类

android - 添加 Firestore 依赖项时,简单程序获取 "Cannot fit requested classes in a single dex file"

android - 程序类型已经存在 : com. android.vending.billing.IInAppBillingService

Android MultiDex - 关于内部工作的问题