Я использую Android Studio на OS X. Я получаю это сообщение об ошибке:
СБОЙ: Сбой сборки за исключением.
Что пошло не так: выполнение задачи не выполнено: app: preDexDebug. com.android.ide.common.internal.LoggedErrorException: не удалось выполнить команду: / Applications / Android Studio.app/sdk/build-tools/android-4.4W/dx --dex --output / Пользователи / alex / AndroidStudioProjects / SilentSMS / app / build / промежуточные / предварительно настроенный / debug / android-4.3_r2.1-f22bbff4d1017230e169a4844a9c2195f13060d2.jar /Users/alex/AndroidStudioProjects/SilentSMS/app/libs/android-4j.r2
Код ошибки: 3 выхода:
UNEXPECTED TOP-LEVEL ERROR:
java.lang.OutOfMemoryError: GC overhead limit exceeded
at com.android.dx.cf.code.RopperMachine.getSources(RopperMachine.java:665)
at com.android.dx.cf.code.RopperMachine.run(RopperMachine.java:288)
at com.android.dx.cf.code.Simulator$SimVisitor.visitLocal(Simulator.java:612)
at com.android.dx.cf.code.BytecodeArray.parseInstruction(BytecodeArray.java:412)
at com.android.dx.cf.code.Simulator.simulate(Simulator.java:94)
at com.android.dx.cf.code.Ropper.processBlock(Ropper.java:782)
at com.android.dx.cf.code.Ropper.doit(Ropper.java:737)
at com.android.dx.cf.code.Ropper.convert(Ropper.java:346)
at com.android.dx.dex.cf.CfTranslator.processMethods(CfTranslator.java:282)
at com.android.dx.dex.cf.CfTranslator.translate0(CfTranslator.java:139)
at com.android.dx.dex.cf.CfTranslator.translate(CfTranslator.java:94)
at com.android.dx.command.dexer.Main.processClass(Main.java:682)
at com.android.dx.command.dexer.Main.processFileBytes(Main.java:634)
at com.android.dx.command.dexer.Main.access$600(Main.java:78)
at com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:572)
at com.android.dx.cf.direct.ClassPathOpener.processArchive(ClassPathOpener.java:284)
at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:166)
at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:144)
at com.android.dx.command.dexer.Main.processOne(Main.java:596)
at com.android.dx.command.dexer.Main.processAllFiles(Main.java:498)
at com.android.dx.command.dexer.Main.runMonoDex(Main.java:264)
at com.android.dx.command.dexer.Main.run(Main.java:230)
at com.android.dx.command.dexer.Main.main(Main.java:199)
at com.android.dx.command.Main.main(Main.java:103)
Я использую эту библиотеку:
http://grepcode.com/snapshot/repository.grepcode.com/java/ext/com.google.android/android/4.3_r2.1/
Я извлек файл JAR и добавил его в свой проект - проект, который я пытаюсь создать:
https://github.com/domi007/silentSMS/
Я понимаю, это потому, что мои значения xms и xmx слишком низкие. Я увеличил их в:
/ Applications / Android Studio.app/bin/idea.vmoptions, так что теперь он говорит:
-Xms256m
-Xmx1024m
Тем не менее, я все еще получаю ошибку. Чем это может быть вызвано? Помимо приложения silentSMS, являющегося проектом Eclipse, и переноса кода в Android Studio, я ничего не изменил. С точки зрения Android Studio обнаружение ошибок - это не так, а все остальное выглядит хорошо.
4g
немного излишне,2g
все в порядкеOutOfMemoryError
org.gradle.jvmargs=-XX:MaxPermSize=1024m -Xms1024m -Xmx4096m -XX:ReservedCodeCacheSize=1024m
В моем случае увеличение размера кучи выглядит так:
Использование Android Studio 1.1.0
Поместите приведенный выше код в ваш файл Build.gradle .
источник
GC overhead limit exceeded
после того, как я включил мультидексинг. Исключение было вat com.android.dx.command.dexer.Main.runMultiDex(Main.java:334)
at com.android.dx.util.FixedSizeList.<init>(FixedSizeList.java:38)
и верхняя частью стеки былаcom.android.dx.command.dexer.Main.runMultiDex(Main.java:334) at com.android.dx.command.dexer.Main.run(Main.java:244) at com.android.dx.command.dexer.Main.main(Main.java:215) at com.android.dx.command.Main.main(Main.java:106)
incremental
: это имеет много ограничений и может не работать. Используйте осторожно.Эта новая проблема вызвана последней версией Android.
Перейдите в корневую папку вашего проекта, откройте
gradle.properties
и добавьте следующие параметры:Затем добавьте эти изменения в ваш
build.gradle
файл:источник
android.dexOptions.incremental
свойство устарело и не влияет на процесс сборки.incremental
Я отключаю мой Мгновенный запуск:
Настройки меню → Сборка → Мгновенный запуск «Включить мгновенный запуск для кода горячей замены»
Я полагаю, что это Instant Run, который замедляет сборку и создает файл pidXXX.hprof большого размера, что приводит к превышению предела накладных расходов gc AndroidStudio.
(SDK моего устройства - 19.)
источник
Android Studio 3.5.3
Найдите настройки памяти (Cmd + Shift + A на Mac или нажмите «Справка» и начните вводить «Настройки памяти») в разделе «Предпочтения / Настройки» и увеличьте размер кучи IDE и / или размер кучи демона к своему удовлетворению.
источник
Добавьте это в файл build.gradle
источник
Я принудительно закрыл все Java.exe из TaskManger, перезапустил Android Studio, и у меня это сработало
источник
Для меня ни один из ответов не сработал. Я догадывался, что из-за очень интенсивной работы процессора компьютер сильно нагревается. После того, как я закрыл программы, которые потребляют большое количество процессора (например, хром), и охладил мой ноутбук, проблема исчезла.
Для справки: у меня процессор на 96% -97% и использование памяти более 2 000 000 К процессами java.exe (которые на самом деле были связаны с процессом gradle).
источник
Я использую,
Android Studio 3.4
и единственное, что мне помогло, это удалить изbuild.gradle
файла следующие строки :Потому
Android Studio 3.4
что используетсяR8
вfull mode
и не напрямую совместим сProguard
источник
minifyEnabled true
конфигурацией с pro-guard, в то время как у gradle-5.1.1 были подобные проблемы../gradlew wrapper --gradle-version=5.2.1
в моем случае я редактирую
gradle.properties
:примечание: если вы включите
minifyEnabled true
:удалить эту строку:
и добавьте эти строки в ur
build.gradle
,android
block:надеюсь, это поможет кому-то :)
источник
4g немного излишне, если вы не хотите менять buildGradle, вы можете использовать FILE -> Invalid caches / restart.
Это хорошо работает для меня ...
источник
В какой-то момент дубликат копии
apply plugin: 'com.android.application'
был добавлен в мою сборку. Удаление дубликата и проверка того, что все мои плагины наверху были наверху, устранили проблему для меня.источник