Я только что обновил Android Studio до версии 3.5 Beta 1 и получаю
Срок действия демона истекает из-за исчерпания пространства кучи JVM
сообщение во время сборки. Кроме того, для завершения сборки требуется больше времени. Кто-нибудь знает об этом?
android-studio
gradle
jvm
android-studio-3.5
Ришаб Сагар
источник
источник
Ответы:
Я смог решить эту проблему для своего проекта React Native , настроив следующее:
и
источник
Это можно исправить, увеличив настроенный максимальный размер кучи. для проекта.
Через IDE:
Добавьте следующие строки в файл gradle.properties. Размер памяти ниже может быть настроен в зависимости от наличия ОЗУ
Через графический интерфейс:
В настройках, поиск «Настройка памяти» и увеличить IDE максимального размера кучи и Daemon максимального размера кучи в соответствии с наличием системной памяти.
источник
По мере того как вы добавляете дополнительные модули в свое приложение, система сборки Android становится все более требовательной, и настройки памяти по умолчанию работать не будут. Чтобы избежать OutOfMemoryErrors во время сборки Android, вам следует раскомментировать альтернативную настройку памяти gradle, присутствующую в /android/gradle.properties :
Вы можете найти gradle.properties внутри android папки .
PS
Позвольте мне прояснить базовую терминологию для понимания всего этого.
Демон : - Демон - это компьютерная программа, которая работает как фоновый процесс, а не находится под прямым управлением интерактивного пользователя.
Android Studio 2.1 включает новую функцию: Dex In Process , которая может значительно увеличить скорость полных чистых сборок, а также повысить производительность Instant Run.
Чтобы воспользоваться преимуществами Dex In Process , вам необходимо изменить файл gradle.properties и увеличить объем памяти, выделенной для виртуальной машины Gradle Daemon, на 1 ГБ, минимум до 2 ГБ, используя свойство org.gradle.jvmargs. :
Задает аргументы JVM, используемые для процесса демона. Этот параметр особенно полезен для настройки параметров памяти.
Значение по умолчанию:
По умолчанию выделение памяти Gradle Daemon VM составляет 1 гигабайт - этого недостаточно для поддержки dexInProcess, поэтому, чтобы воспользоваться этим преимуществом, вам необходимо установить его как минимум на 2 гигабайта.
Dex in process работает, позволяя запускать несколько процессов DEX в одной виртуальной машине, которая также используется совместно с Gradle, поэтому вам необходимо выделить дополнительную память, прежде чем ее можно будет включить - эта память будет совместно использоваться Gradle и несколькими процессами DEX.
Если вы увеличили javaMaxHeapSize в файле build.gradle на уровне модуля сверх значения по умолчанию в 1 гигабайт, вам потребуется соответственно увеличить память, назначенную Gradle Daemon.
Когда достаточно памяти, Dex in Process включен по умолчанию, улучшая общую производительность сборки и устраняя накладные расходы на запуск нескольких параллельных экземпляров виртуальных машин . В результате значительно улучшается время сборки, включая мгновенный запуск, инкрементную и полную сборку.
Источник: https://medium.com/google-developers/faster-android-studio-builds-with-dex-in-process-5988ed8aa37e
https://rnfirebase.io/#increasing-android-build-memory
источник
org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
в gradle.properties. Если все еще не работает, извините, я не знаю, как это исправить.org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
вandroid/gradle.properties
сработанном лайке оберег. Благодаря!! @KailashUniyal