R8 问题:由于错误 GC 开销限制超出,无法设置 Proguard minifyEnabled

Yul*_*mok 4 android android-r8

使用minifyEnabled true选项生成发行包时出错。以下是给我错误的 Gradle 设置:

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

我还发现任务 transformClassesAndResourcesWithR8For... 花费了太多时间(最多 10-20 分钟)

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

sgj*_*sse 5

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

  org.gradle.jvmargs=-Xmx2G
Run Code Online (Sandbox Code Playgroud)

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