Превышено ограничение накладных расходов GC при включении R8 Shrinker в Android Studio 3.4

Я использую Android Studio 3.4 (Canary 9), при сборке приложения произошла ошибка со следующей ошибкой

Task :app:transformClassesAndResourcesWithR8ForDebug

R8 является экспериментальная особенность. Если у вас возникли проблемы, пожалуйста, сообщите об ошибке в https://issuetracker.google.com, используя "Shrinker (R8)" в качестве компонента имя. Вы можете отключить R8, обновив gradle.properties с помощью 'Android.enableR8 = ложь.

AGPBI: {"kind":"warning","text":"Missing class: java.lang.instrument.ClassFileTransformer","sources":[{}],"tool":"D8"}

Задача: app: transformClassesAndResourcesWithR8ForDebug FAILED

FAILURE: сборка не удалась, исключение.

  • Что пошло не так: выполнение задачи не выполнено: app: transformClassesAndResourcesWithR8ForDebug '.

Превышен лимит накладных расходов GC

Когда я отключаю R8, помещая android.enableR8=false в gradle.properties. Все работает нормально.

Так как я могу исправить эту ошибку без отключения R8 Shrinker? Потому что я действительно хочу проверить функциональность R8.

Ответ 1

Как вы сказали, вы не используете какой-либо пользовательский JVM args, попробуйте.

В вашем файле gradle.properties попробуйте несколько значений настроек памяти. Например, попробуйте установить

org.gradle.jvmargs=-Xmx4096m

В соответствии с комментариями раздела:

Указывает аргументы JVM, используемые для процесса демона.

Эта настройка особенно полезна для настройки параметров памяти.

org.gradle.jvmargs=-Xmx1536m

Я использовал R8 в своем проекте, и все работало нормально.