Android Gradle Не вдалося зарезервувати достатньо місця для купи об’єктів


91

Я встановив Android Studio 1.1.0. Я ще нічого не робив, як запустити нову програму Android або імпортувати щось. Якось він намагається щось побудувати і видає помилку синхронізації.

Помилка: Не вдається запустити процес демона. Ця проблема може бути викликана неправильною конфігурацією демона. Наприклад, використовується невизнаний параметр jvm. Будь ласка, зверніться до розділу посібника користувача про демон на http://gradle.org/docs/2.2.1/userguide/gradle_daemon.html

Будь ласка, прочитайте наступні результати процесу, щоб дізнатися більше:


Помилка під час ініціалізації віртуальної машини Не вдалося зарезервувати достатньо місця для купи об’єктів Не вдалося створити віртуальну машину Java.

Я вже перевірив, gradle.org/.../gradle_daemon.htmlале не зміг знайти нічого, що допомагає мені вирішити проблему.

Це не проблема пам'яті, оскільки я маю 8 ГБ фізичної пам’яті і жодної іншої програми не запущено.


Перевірте своє середовище GRADLE_OPTS або ваш gradle.properties, переконайтесь, що вони мають правильні конфігурації, як повідомляє помилка.
Аль Хасінто,

Не потрібно встановлювати GRADLE_OPTS, але, незалежно від того, що я шукав gradle.properties у всій файловій системі, і нічого, здається, немає.
GummDev

1
gradle читав не лише ваш проект gradle.properties, він також читав вас ~ / .gradle / gradle.properties, ви це також перевіряли?
Аль Хасінто

Я зробив, і параметри для JVM такі ж, як параметри, вже налаштовані ... -Xmx = 768m і так далі ..
GummDev

Я знаю, що це пізня відповідь, але вона надана, щоб допомогти іншим людям, які можуть зіткнутися з цією проблемою. Якщо збірка Gradle була зроблена належним чином у попередні часи, спробуйте перезапустити Android Studio та перезавантажте комп'ютер, а потім спробуйте інші варіанти.
мок

Відповіді:


206

Для Android Studio 1.3: (Спосіб 1)

Крок 1: Відкрийте файл gradle.properties у вашому проекті Android Studio.

Крок 2: Додайте цей рядок у кінці файлу

org.gradle.jvmargs=-XX\:MaxHeapSize\=256m -Xmx256m

Вищезазначені методи, здається, працюють, але якщо у випадку, якщо цього не станеться, зробіть це (Метод 2)

Крок 1: Запустіть студію Android і закрийте будь-який відкритий проект ( Файл> Закрити проект ).

Крок 2: У вікні привітання перейдіть до Налаштування> Налаштування .

Крок 3: Перейдіть до Побудова, виконання, розгортання> Компілятор

Крок 4: Змініть розмір купи збірки процесів (Мбайт) на 1024 та Додатковий процес збірки на Параметри віртуальної машини на -Xmx512m .

Крок 5: Закрийте або перезапустіть Android Studio .

ВИРІШЕНО - Andriod Studio 1.3 Gradle Не вдалося зарезервувати достатньо місця для випуску купи об’єктів


Дякую за відповідь ... але я пробував цю процедуру раніше і теж не працював.
GummDev

2
Спробуйте метод 2, він вирішив мою проблему. (Спробуйте змінити максимальний розмір купи, якщо це не спрацює).
Faiz Siddiqui

1
@AZ_: Не можна звинувачувати Google. Це не 20 століття. Справа йде в 10 разів швидше, ніж минулого століття. Немає часу на вишукану якість. Крім того, ви користуєтесь ним безкоштовно. Що ви можете запитати більше? Слава Богу, є stackoverflow :)
Скотт Чу

5
Я не розумію, я не можу знайти жодного файлу з назвою gradle.properties
Майда

5
Що сказав @Majda. У проекті немає такого файлу з назвою gradle.properties. Там же build.gradle, settings.gradle, local.propertiesі gradle-wrapper.properties. Вся причина, по якій я знайшов цю відповідь, полягає в тому, що в результатах збірки передбачено редагувати проект gradle.properties, і в проекті такого файлу немає!
aroth

31

у gradle.properties можна навіть видалити

org.gradle.jvmargs=-Xmx1536m

такі рядки або коментуйте їх. Нехай андроїд-студія вирішить це. Коли я зіткнувся з цією ж проблемою, жодне з наведених вище рішень не працювало для мене. Коментування цього рядка у gradle.properties допомогло вирішити цю помилку.


18

Я спробував кілька рішень, здавалося, нічого не вийшло. Налаштування моєї системи JDK на відповідність Android Studio вирішило проблему.

Переконайтеся, що ваш системний java

java -version

Це те саме, що Android

File > Project Structure > JDK Location

У моєму випадку (Android studio 1.1 32-розрядна версія) працював старий шлях jdk. З 1,7 до 1,6.
Рохіт Рокде

Врятував свій день! ~ Тепер я розумію, звідки проблема. Це тому, що раніше у мене було 4 Гб оперативної пам’яті та 32-бітний jdk всередині AS. Зараз у мене 16 Гб оперативної пам'яті і 32-бітний JDK просто не вдалося запустити, тому що він повинен ініціалізувати весь мій оперативної пам'яті, перш ніж він спрацює.
LPVOID

як "Налаштування моєї системи JDK на відповідність Android Studio"?
Харун

18

Додайте наступний рядок в MyApplicationDir\gradle.properties

org.gradle.jvmargs=-Xmx1024m

Це спрацювало для мене у вікні Windows. Я змінив gradle.properties від org.gradle.jvmargs=-Xmx1536mдоorg.gradle.jvmargs=-Xmx1024m
EmpathicSage

11

Моє виправлення за допомогою Android Studio 3.0.0 у Windows 10 полягає у видаленні повністю будь-яких аргументів jvm з файлу gradle.properties .

Я використовую обгортку Android gradle 3.0.1 з gradle версії 4.1. Жодні команди gradlew не працювали, але попередження говорить про те, що він намагається ігнорувати будь-які аргументи пам'яті jvm, оскільки вони були видалені в 8 (я вважаю, це Java 8).


1

Я зіткнувся з тим самим питанням, ось мій пост:

Android Studio - Помилка збірки Gradle - Java Heap Space

резюме exec: Windows шукає файл gradle.properties тут:

C:\Users\.gradle\gradle.properties

Тож створіть цей файл і додайте такий рядок:

org.gradle.jvmargs=-XX\:MaxHeapSize\=256m -Xmx256m

відповідно до повідомлення @Faiz Siddiqui


0

Рішення для Android Studio 2.3.3 на MacOS 10.12.6

Запустіть Android Studios з більшою кількістю пам'яті:

export JAVA_OPTS="-Xms6144m -Xmx6144m -XX:NewSize=256m -XX:MaxNewSize=356m -XX:PermSize=256m -XX:MaxPermSize=356m"
open -a /Applications/Android\ Studio.app

не працює .. чи є ще щось крім цього, що ми повинні робити?
Умар Фару
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.