在Android Studio 3.4中启用R8 Shrinker时,超出了GC开销限制

nho*_*ass 13 android android-studio r8 android-studio-3.4

我正在使用Android Studio 3.4(金丝雀9),当我构建应用程序时,它失败并出现以下错误

任务:app:transformClassesAndResourcesWithR8ForDebug

R8是一项实验功能。如果您遇到任何问题,请使用“收缩器(R8)”作为组件名称,通过https://issuetracker.google.com提交错误。您可以通过使用'android.enableR8 = false'更新gradle.properties来禁用R8。

AGPBI:{“种类”:“警告”,“文本”:“缺少类:java.lang.instrument.ClassFileTransformer”,“源”:[{}],“工具”:“ D8”}

任务:app:transformClassesAndResourcesWithR8ForDebug失败

失败:构建失败,发生异常。

  • 出了什么问题:任务':app:transformClassesAndResourcesWithR8ForDebug'的执行失败。

超出了GC开销限制

当我通过把禁用R8 android.enableR8=falsegradle.properties。一切正常。

那么如何在不禁用R8 Shrinker的情况下解决此错误呢?因为我真的很想测试R8的功能。

sha*_*eep 20

如您所说,您没有使用任何自定义JVM args,请尝试一下。

在您的gradle.properties文件中尝试几个内存设置值。例如尝试设置

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

如评论部分所建议:

指定用于守护进程的JVM参数。

该设置对于调整内存设置特别有用。

org.gradle.jvmargs = -Xmx1536m

我在项目中使用了R8,并且一切正常。

  • 使用Android Studio 3.4无法为我工作 (6认同)
  • 谢谢,它对我有用(AS 3.4) (2认同)
  • 对于gradle版本5.1.1(在gradle-wrapper.properties中),此方法不起作用(也没有将堆大小和Xmx​​设置为4 GB),但是在实际5.4.1版本中却起作用(也仅将Xmx设置为2 GB)。 (2认同)