Ответ 1
Возможно, это была проблема с моей установкой Java. Я удалил все следы файлов Java (C://program files/Java/jdk) и jre и переустановил их с официальной страницы , и теперь все работает нормально.
Я пробовал искать похожие, и никакое решение не работало. Я ранее запускал приложения без проблем, но мое новое приложение внезапно начало давать мне проблемы. Он всегда терпит неудачу, когда я пытаюсь запустить его, говоря:
Error:Execution failed for task ':app:preDexDebug'.
com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files (x86)\Java\jdk1.7.0_67\bin\java.exe'' finished with non-zero exit value 1
Вот что отображается консоль:
Executing tasks: [:app:assembleDebug]
Configuration on demand is an incubating feature.
:app:preBuild UP-TO-DATE
:app:preDebugBuild UP-TO-DATE
:app:compileDebugNdk UP-TO-DATE
:app:checkDebugManifest
:app:preReleaseBuild UP-TO-DATE
:app:prepareComAndroidSupportSupportV42200Library UP-TO-DATE
:app:prepareDebugDependencies
:app:compileDebugAidl UP-TO-DATE
:app:compileDebugRenderscript UP-TO-DATE
:app:generateDebugBuildConfig UP-TO-DATE
:app:generateDebugAssets UP-TO-DATE
:app:mergeDebugAssets UP-TO-DATE
:app:generateDebugResValues UP-TO-DATE
:app:generateDebugResources UP-TO-DATE
:app:mergeDebugResources UP-TO-DATE
:app:processDebugManifest UP-TO-DATE
:app:processDebugResources UP-TO-DATE
:app:generateDebugSources UP-TO-DATE
:app:compileDebugJava UP-TO-DATE
:app:preDexDebug
AGPBI: {"kind":"SIMPLE","text":"Error: Could not create the Java Virtual Machine.","position":{},"original":"Error: Could not create the Java Virtual Machine."}
AGPBI: {"kind":"SIMPLE","text":"Error: A fatal exception has occurred. Program will exit.","position":{},"original":"Error: A fatal exception has occurred. Program will exit."}
AGPBI: {"kind":"SIMPLE","text":"Error: Could not create the Java Virtual Machine.","position":{},"original":"Error: Could not create the Java Virtual Machine."}
AGPBI: {"kind":"SIMPLE","text":"Error: A fatal exception has occurred. Program will exit.","position":{},"original":"Error: A fatal exception has occurred. Program will exit."}
FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:preDexDebug'.
com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files (x86)\Java\jdk1.7.0_67\bin\java.exe'' finished with non-zero exit value 1
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED
Total time: 2.614 secs
AGPBI: {"kind":"SIMPLE","text":"Error: Could not create the Java Virtual Machine.","position":{},"original":"Error: Could not create the Java Virtual Machine."}
AGPBI: {"kind":"SIMPLE","text":"Error: A fatal exception has occurred. Program will exit.","position":{},"original":"Error: A fatal exception has occurred. Program will exit."}
Это приложение очень простое, и я не сильно его изменил из макета. Он предназначен только для леденцов и использует только функции запаса. Вот пример build.gradle:
apply plugin: 'com.android.application'
android {
compileSdkVersion 22
buildToolsVersion "22.0.0"
defaultConfig {
applicationId "com.package.app"
minSdkVersion 21
targetSdkVersion 22
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:support-v4:22.0.0'
}
Возможно, это была проблема с моей установкой Java. Я удалил все следы файлов Java (C://program files/Java/jdk) и jre и переустановил их с официальной страницы , и теперь все работает нормально.
Произошла одна и та же ошибка, которая была вызвана конфликтующими доступными ресурсами. Я сделал чистый проект, и ошибка больше не встречалась.
После большого количества серфинга я обнаружил, что проблема связана с GC (из памяти). Добавив ниже код в мой build.gradle, я сохранил свой день.
android {
dexOptions {
incremental = true;
preDexLibraries = false
javaMaxHeapSize "4g" // 2g should be also OK
}
}
reference - ProcessException: org.gradle.process.internal.ExecException завершено с ненулевым значением выхода 2
Возможно, вы можете изменить номер buildToolsVersion.
это моя проблема:
Error:Execution failed for task ':app:transformClassesWithDexForDebug'.
> com.android.build.api.transform.TransformException: java.lang.RuntimeException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'D:\ProgramTools\Java\jdk1.7.0_79\bin\java.exe'' finished with non-zero exit value 1
my build.gradle:
android {
compileSdkVersion 23
buildToolsVersion "24.0.0"
defaultConfig {
applicationId "com.pioneers.recyclerviewitemanimation"
minSdkVersion 15
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
Я просто изменяю buildToolsVersion для buildToolsVersion "23.0.2", и проблема была решена.
Проблема ОЗУ. У меня было подобное сообщение в моих сообщениях Gradle Build
Error:Execution failed for task ':app:dexDebug'.
> com.android.ide.common.process.ProcessException: org.gradle.process.internal.
ExecException: Process 'command 'C:\Program Files\Java\jdk1.8.0_45\bin\java.exe''
finished with non-zero exit value 1
Почему: У меня не было бесплатной ОЗУ на моем ноутбуке с ОС Windows 8.1.
Решение: Я закрыл несколько программ, которые мне не нужны. После этого у меня было больше бесплатной памяти, и мой проект был построен в студии Android.
В моем случае решение заключалось в том, чтобы закрыть Android Studio и убить java-процессы, которые были очень большими (1,2 ГБ). После этого мой проект работает нормально (OS X Mount Lion, Android Studio 1.2.2, iMac Mid 2011 4GB Ram).
У меня была такая же проблема после добавления библиотеки Icecick к моим зависимостям gradle. После удаления зависимостей все кажется прекрасным. Как только я знаю, почему эта проблема появилась, я снова напишу
Решение
1. Просто очистите проект и проверьте его работу или нет.
2.Просто перезапустите андроид-студию после закрытия всех задач мусора.
3.Если оба вышеперечисленные вещи не работают, добавьте это в файл gradle.build
android {
dexOptions {
incremental = true;
preDexLibraries = false
javaMaxHeapSize "4g"
}
}
После добавления файла jar в папку проекта lib и после добавления его в файл build.gradle в качестве примера компиляции при синхронизации gradle добавьте дополнительную строку как компилировать файлы ('libs/example.jar'). Вам просто нужно удалить строку, которую вы ранее добавили в файл build.gradle, т.е. Пример компиляции "после синхронизации gradle. Вам также необходимо удалить строку скомпилировать файлTree (dir: 'libs', include: '*.jar')
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}
добавьте это в свою конструкцию gradle. Это сработало для меня
Я пробовал практически все, пока не попытаюсь запустить script из командной строки ошибки:
dx.bat -JXmx1536m --dex --output \build\intermediates\pre-dexed\debug\classes-01b5c6cd66151f573da9773c18af55d10736a24e.jar build\intermediates\exploded-aar\aaa-release\classes.jar
Error occurred during initialization of VM
Could not reserve enough space for object heap
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
Затем я прокомментировал настройку памяти разработчика в gradle script:
// javaMaxHeapSize "1536m"
и я смог передать эту ошибку. Мне нужно увеличить RAM в моем ноутбуке.
Вы должны обновить все блоки в SDK Manager (Библиотека поддержки и т.д.), все не обновленные библиотеки и пакеты. После этого вы должны синхронизировать gradle файлы с проектом и радоваться!
Ответ для меня заключался в том, чтобы освободить память для процесса сборки, закрыв программирование или перезагрузив машину (win10, похоже, хуже управляет памятью, чем win7)
Почему это исправлено для меня?
Во время сборки в студии Android не хватает памяти для компиляции, но она не показывает никаких ошибок. Ошибка: app: preDexDebug произошла, когда я попытался загрузить скомпилированное приложение на телефон.
Иногда я мог бы пройти через этот момент (нет приложения: ошибка preDexDebug), но при запуске приложения на Android я получил исключения ClassNotFound. Это было ключом к поиску студии Android, которая не собирала все мои файлы во время сборки из-за нехватки памяти (win10 попросил меня закрыть студию Android для сохранения памяти во время сборки), хотя IDE показывает мне, что сборка была успешной.
Уборка и восстановление проекта работает для меня. В студии Android:
Build -> Clean Project
Build -> Rebuild Project
Обратитесь ссылка
В моем случае настройка размера Java Max Heap от 2g до 1g.
Добавьте следующий код в файл приложения build.gradle
android {
dexOptions {
javaMaxHeapSize "1g"
}
}
Это решение работает для меня
Установите Java JDK 8.
Затем перейдите в Инструменты- > Параметры → Инструменты для переопределения переменных Apava Cordova- > Environment и установите путь к вашему JDK в "C:\Program Files\java\jdk1.8.0_121", чтобы получить Java 8 вместо Java 7.
для получения дополнительной информации http://www.developersite.org/103-141954-android
Я получил эту ошибку после переноса моего проекта с моего ноутбука на свой рабочий стол в Android Studio.
Моим решением было перезапустить Android Studio, затем очистить проект и, наконец, выполнить проект.
У меня была такая же проблема, после того как я попробовал каждый из ответов здесь, я заметил, что пакет, который я переименовал, не был переименован в класс, который его импортировал. Я исправил это имя и сразу решил проблему.
Вероятно, это связано с тем, что ваше приложение превышает количество меток 65 тыс., что вызывает ошибку dex. В вашем приложении нет решения, кроме включения мультисайсирования.
Ну, может быть много проблем, связанных с ним. Прежде всего проверьте, перепутались ли вы с местами размещения файлов. например, что я сделал, я помещал файл без xml в папку с анимацией, что недопустимо. Поэтому проверьте, не случилось ли с вами такое.
Вы включили мультисайдинг?. Расширьте свой основной класс приложения MultiDexApplication. У меня есть дополнительная ошибка, связанная с ошибкой. Они выглядят следующим образом.
Uncaught translation error: java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: GC overhead limit exceeded
Uncaught translation error: java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: Java heap space
2 errors; aborting
Это ясно говорит о том, что ошибка произошла из-за нехватки памяти. Попробуйте следующее:
Это сделает трюк;)
Дайте этой матери шанс:
dependencies {
classpath 'com.android.tools.build:gradle:1.4.0-beta6'
}
Не забудьте закладок this.
У меня была такая же проблема только сейчас, и она оказалась вызвана неисправным файлом attrs.xml
в одном из моих модулей. Первоначально у файла было два стилируемых атрибута для одного из моих пользовательских представлений, но я удалил его, когда оказалось, что он больше не нужен. Однако это, видимо, не было правильно зарегистрировано в среде IDE, поэтому сборка завершилась неудачно, когда он не смог найти атрибут.
Решение для меня состояло в том, чтобы повторно добавить атрибут, запустите clean project
, после чего сборка завершилась успешно, и я смог бы успешно удалить атрибут снова без каких-либо дополнительных проблем.
Надеюсь, это поможет кому-то.
Существует много причин, приводящих к
com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: команда процесса 'C:\Program Files\Java\jdk1.8.0_60\bin\java.exe' 'завершено с ненулевое значение выхода 1
Если вы не достигли предела dex, но вы получаете ошибку, подобную этой Error:com.android.dx.cf.iface.ParseException: name already added: string{"a"}
Попробуйте отключить proguard, если ему удастся скомпилировать без проблем, вам нужно будет выяснить, какая библиотека вызвала его и добавить в файл proguard-rules.pro
В моем случае эта проблема возникает, когда я обновляю compile 'com.google.android.gms:play-services-ads:8.3.0'
до compile 'com.google.android.gms:play-services-ads:8.4.0'
Одним из способов решения этой проблемы я добавил это в файл proguard-rules.pro
## Google AdMob specific rules ##
## https://developers.google.com/admob/android/quick-start ##
-keep public class com.google.ads.** {
public *;
}
Я разрешаю эту проблему с шутки. У меня есть два класса с именами startDl
и startDl
. Я просто меняю один из них на StartDownload
, и моя проблема решена. также ресурсы могут иметь имя, которое уже зарезервировано с ресурсом в проекте. просто переименуйте похожие имена в разные.
Экспериментально я нашел способ:
Приложение расширяет приложение не MultiDexApplication
и удалите
org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
из gradle.properties
Удалите строку:
('com.android.support:support-v4:22.0.0')
От зависимостей (в build.gradle
):
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:support-v4:22.0.0'
}
Все, что вам нужно сделать, это убить часть выполняющегося процесса и освободить место в вашей памяти (ОЗУ). Вы можете попытаться закрыть часть программы с высокой потребляемой памятью. Вы также можете попробовать перезапустить Android Studio. Это сработало для меня.
Для меня это работает:
defaultConfig {
multiDexEnabled true
}