android - 插孔内存不足

标签 android out-of-memory jack-compiler

我正在测试新的编译链以开始使用 lambda。

我的 build.gradle 文件包含:

android {
    ...
    compileSdkVersion 23
    buildToolsVersion "24 rc3"

    dexOptions {
        jumboMode true
    }

    defaultConfig {
        applicationId "my.app.id"
        minSdkVersion 14
        targetSdkVersion 23
        multiDexEnabled true

        jackOptions {
            enabled true
        }
    }

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
}

我正在使用 Android Studio 2.1.1。

当我构建应用程序时,编译需要很长时间,然后以内存不足错误结束:

Execution failed for task ':app:compileAppNameJavaWithJack'.

java.lang.RuntimeException: java.lang.OutOfMemoryError: GC overhead limit exceeded

有时编译只是在执行时挂起:

:app:compileMyAppNameDebugJavaWithJack

我找到了 in the troubleshooting section here一种修复它的方法,但我找不到带有配置的 .jack 文件。 在 this bug report有人提到该文件可以重命名为 jack.settings,但我也找不到该文件。

你知道文件在哪里吗?您知道如何修复内存不足错误吗?

最佳答案

我设法修复了问题设置:

org.gradle.jvmargs=-Xmx2048M

gradle.properties文件中

检查 here有关设置的更多信息

关于android - 插孔内存不足,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37098997/

相关文章:

java - 查明 processbuilder 生成的进程是否抛出异常或干净地完成

android - Lambda 导致 Android 库模块中的编译器异常

jack 的 Android 编译时间非常慢

java - 反编译、修改和重新编译android apk

android - OnPause() 之后会发生什么,仍然可以调用监听器吗?

android - 如何在 Android 中同时使用 ORMLite 和 SQLCipher?

Android——隐藏 View

java - maven内存不足错误

java - ArrayList<String> 的限制

android - 错误 :Jack is required to support java 8 language features