首页 > 解决方案 > R8 问题:由于超出错误 GC 开销限制,无法设置 Proguard minifyEnabled

问题描述

minifyEnabled true生成带有选项的发布包时出错。以下是给我错误的 Gradle 设置:

buildTypes {
        release {
            minifyEnabled true
            shrinkResources true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }

我还看到任务 transformClassesAndResourcesWithR8For... 需要太多时间(最多 10-20 分钟)

错误: java.lang.OutOfMemoryError: GC overhead limit exceeded在 Gradle 任务中 transformClassesAndResourcesWithR8ForCommonRelease

标签: androidandroid-r8

解决方案


替代 R8 的解决方案是通过添加/更改 in 的值(在 Adroid Studio 项目的根目录中)来提高 gradle 守护程序的 JVM 堆org.gradle.jvmargs大小gradle.properties

  org.gradle.jvmargs=-Xmx2G

如果这还不够,请尝试使用 4G。R8 的内存使用量一直在增长,对于 3.4,一些应用程序出现了 OOM 问题。


推荐阅读