Ich habe versucht, ähnliche zu betrachten, und keine Lösung hat funktioniert. Ich habe zuvor problemlos Apps ausgeführt, aber meine neue App hat mir plötzlich Probleme bereitet. Es schlägt immer fehl, wenn ich versuche, es auszuführen und zu sagen:
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
Die Konsole zeigt Folgendes an:
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."}
Diese App ist sehr einfach und ich habe sie nicht viel vom Lagerlayout geändert. Es ist nur für Lutscher konzipiert und verwendet nur Standardfunktionen. Hier ist das 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'
}
android:shadowRadius="4dp"
und löschen Sie sie.Antworten:
Hatte den gleichen Fehler aufgetreten, der auf widersprüchliche ziehbare Ressourcen zurückzuführen war. Ich habe ein sauberes Projekt durchgeführt und der Fehler wurde nicht mehr festgestellt.
quelle
Nach vielem Surfen stellte ich fest, dass das Problem der GC-Overhead ist (nicht genügend Speicher). Durch Hinzufügen des folgenden Codes zu meinem build.gradle wurde mein Tag gerettet.
Referenz - ProcessException: org.gradle.process.internal.ExecException wurde mit einem Exit-Wert ungleich Null 2 beendet
quelle
g
? Gigabyte?DexOptions.incremental
ist veraltet und wird Ende 2018 entferntEs muss ein Problem mit meiner Java-Installation gewesen sein. Ich habe alle Spuren von Java (C: // Programmdateien / Java / jdk) und jre-Ordnern entfernt und von der offiziellen Seite neu installiert, und jetzt funktioniert es einwandfrei .
quelle
Vielleicht können Sie Ihre buildToolsVersion-Nummer ändern.
das ist mein Problem:
mein build.gradle:
Ich ändere einfach buildToolsVersion in buildToolsVersion "23.0.2" und das Problem wurde gelöst.
quelle
Problem RAM . Ich hatte eine ähnliche Nachricht in meinem Messages Gradle Build
Warum: Ich hatte keinen freien RAM auf meinem Laptop mit dem Betriebssystem Windows 8.1.
Lösung: Ich habe einige Programme geschlossen, die ich nicht benötige. Danach hatte ich mehr freien RAM und mein Projekt wurde in Android Studio gebaut.
quelle
In meinem Fall bestand die Lösung darin, Android Studio zu schließen und die Java-Prozesse zu beenden, was sehr groß war (1,2 GB). Danach läuft mein Projekt normal (OS X Mount Lion, Android Studio 1.2.2, iMac Mid 2011 4 GB RAM).
quelle
Lösung
1. Reinigen Sie das Projekt einfach und überprüfen Sie, ob es funktioniert oder nicht
2. Starten Sie Android Studio einfach neu, nachdem Sie alle Müllaufgaben geschlossen haben
3.Wenn beide oben genannten Dinge nicht funktionieren, fügen Sie dies in die Datei gradle.build ein
quelle
Ich hatte das gleiche Problem, nachdem ich den Eispickel der Bibliothek zu meinen Gradle-Abhängigkeiten hinzugefügt hatte. Nach dem Entfernen der Abhängigkeit scheint alles in Ordnung zu sein. Sobald ich weiß, warum dieses Problem aufgetreten ist, schreibe ich hier erneut
quelle
provided
anstellecompile
derprocessor
Abhängigkeit verwendet werden. Siehe dieses Ticket .Verwenden Sie die Option
assembleandroidtest
wie im Bild unten. So können Sie mehr über den aufgetretenen Fehler erfahren:quelle
Nach dem Hinzufügen einer JAR-Datei zum lib-Ordner eines Projekts und nach dem Hinzufügen zur Datei build.gradle als Beispiel für den Kompilierungspfad beim Synchronisieren des Gradles wird eine zusätzliche Zeile als Kompilierungsdateien ('libs / example.jar') hinzugefügt . Sie müssen nur die Zeile entfernen, die Sie zuvor zur Datei build.gradle hinzugefügt haben, dh das Kompilierungspfadbeispiel nach der Gradle-Synchronisierung. Sie müssen auch die Zeile compile fileTree entfernen (dir: 'libs', include: '* .jar')
quelle
füge dies deinem gradle Build hinzu. Es hat bei mir funktioniert
quelle
Die Antwort für mich war, Speicher für den Erstellungsprozess freizugeben, die Programmierung zu schließen oder den Computer neu zu starten (win10 scheint den Speicher schlechter zu verwalten als win7).
Warum hat es für mich behoben?
Während des Builds findet Android Studio nicht genügend Speicher zum Kompilieren, zeigt jedoch keinen Fehler an . Der Fehler: app: preDexDebug trat gerade auf, als ich versuchte, die kompilierte App auf das Telefon hochzuladen.
Manchmal konnte ich diesen Punkt durchstehen (keine App: preDexDebug-Fehler), aber als ich die Anwendung auf Android ausführte, bekam ich "ClassNotFound" -Ausnahmen. Dies war der Anhaltspunkt dafür, dass Android Studio während des Builds nicht alle meine Dateien kompilierte, da nicht genügend Speicher vorhanden war (Win10 forderte mich auf, Android Studio zu schließen, um Speicher während des Builds zu sparen), obwohl die IDE mir zeigte, dass der Build erfolgreich war .
quelle
Das Reinigen und Umbauen des Projekts funktioniert für mich. Im Android Studio:
Siehe Link
quelle
Ich habe praktisch alles versucht, bis ich versucht habe, das Skript aufgrund eines Fehlers in der Befehlszeile auszuführen:
Dann habe ich die Speichereinstellung des Entwicklers im Gradle-Skript auskommentiert:
und ich konnte diesen Fehler weitergeben. Ich muss den Arbeitsspeicher meines Laptops erhöhen.
quelle
android.dexOptions
. Ich hatte es selbst bei 3 GB bei einer Win10-Installation mit 16 GB RAM. Durch Verringern auf 1 oder Entfernen wurde es (ironischerweise) für michSie müssen alle Blöcke in SDK Manager (Support Library usw.), alle nicht aktualisierten Bibliotheken und Pakete aktualisieren. Danach müssen Sie Gradle-Dateien mit dem Projekt synchronisieren und sich freuen!
quelle
In meinem Fall hat die Einstellung der maximalen Java-Heap-Größe von 2 g bis 1 g funktioniert.
Fügen Sie der build.gradle-Datei des Anwendungsmoduls Folgendes hinzu
quelle
Diese Lösung funktioniert für mich
Installieren Sie Java JDK 8.
Gehen Sie dann zu Extras-> Optionen -> Extras für Apache Cordova-> Umschreibungen von Umgebungsvariablen und setzen Sie den Pfad zu Ihrem JDK auf "C: \ Programme \ java \ jdk1.8.0_121", um Java 8 anstelle von Java 7 zu erhalten.
Weitere Informationen finden Sie unter http://www.developersite.org/103-141954-android
quelle
Experimentell fand ich Weg:
App erweitert Anwendung nicht MultiDexApplication
und entfernen
org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
von gradle.properties
quelle
Ich habe diesen Fehler erhalten, nachdem ich mein Projekt von meinem Laptop auf meinen Desktop in Android Studio übertragen habe.
Meine Lösung bestand darin, Android Studio neu zu starten, dann das Projekt zu bereinigen und schließlich das Projekt auszuführen.
quelle
Ich hatte das gleiche Problem, nachdem ich jede der Antworten hier ausprobiert hatte, bemerkte ich, dass ein Paket, das ich umbenannt hatte, nicht in einer Klasse umbenannt worden war, die es importierte. Ich habe den Namen behoben und das Problem sofort gelöst.
quelle
Dies ist wahrscheinlich darauf zurückzuführen, dass Ihre App die Anzahl der 65.000 Methoden überschreitet und somit einen Dex-Fehler verursacht. Es gibt keine andere Lösung als das Aktivieren von Multidexing in Ihrer App.
quelle
Nun, damit können viele Probleme verbunden sein. Überprüfen Sie zunächst, ob Sie einige Dateipositionierungen durcheinander gebracht haben. Zum Beispiel habe ich eine Nicht-XML-Datei in einen Animationsordner gelegt, was nicht erlaubt ist. Überprüfen Sie also, ob Ihnen solche Dinge auch passiert sind.
quelle
Haben Sie Multidexing aktiviert? Erweitern Sie Ihre Hauptanwendungsklasse mit MultiDexApplication. Ich habe vor dem Fehler eine zusätzliche Ausnahmemeldung erhalten. Sie sind wie folgt.
Dies zeigt deutlich, dass der Fehler aufgrund von Speichermangel aufgetreten ist. Versuche Folgendes:
Dies wird den Trick machen;)
quelle
Gib dieser Mutter eine Chance:
Vergessen Sie nicht, Lesezeichen diese .
quelle
Ich hatte gerade das gleiche Problem und es stellte sich heraus, dass es durch einen Fehler verursacht wurde
attrs.xml
Datei in einem meiner Module verursacht wurde. Die Datei hatte anfangs zwei stilisierbare Attribute für eine meiner benutzerdefinierten Ansichten, aber ich hatte eines gelöscht, als sich herausstellte, dass ich es nicht mehr brauchte. Dies wurde jedoch anscheinend nicht korrekt bei der IDE registriert, sodass der Build fehlschlug, als das Attribut nicht gefunden werden konnte.Die Lösung für mich bestand darin, das Attribut erneut hinzuzufügen, eine auszuführen,
clean project
nach der der Build erfolgreich war, und das Attribut ohne weitere Probleme erfolgreich wieder zu entfernen.Hoffe das hilft jemandem.
quelle
Es gibt viele Gründe, die dazu führen
Wenn Sie das Dex-Limit nicht erreichen, aber einen ähnlichen Fehler erhalten
Error:com.android.dx.cf.iface.ParseException: name already added: string{"a"}
Versuchen Sie, Proguard zu deaktivieren. Wenn es ohne Probleme kompiliert werden kann, müssen Sie herausfinden, welche Bibliothek es verursacht hat, und es der
proguard-rules.pro
Datei hinzufügenIn meinem Fall tritt dieses Problem auf, wenn ich auf aktualisiert
compile 'com.google.android.gms:play-services-ads:8.3.0'
habecompile 'com.google.android.gms:play-services-ads:8.4.0'
Eine der Problemumgehungen ist, dass ich dies zur
proguard-rules.pro
Datei hinzugefügt habequelle
Ich löse dieses Problem mit einem Scherz. Ich habe zwei Klassen mit Namen
startDl
undStartDl
. Ich ändere einfach einen von ihnenStartDownload
und mein Problem ist gelöst. Ressourcen können auch einen Namen haben, der bereits für weitere Ressourcen im Projekt reserviert ist. benenne einfach ähnliche Namen in andere um.quelle
Alles, was Sie tun müssen, ist, einen Teil des laufenden Prozesses abzubrechen und den Speicherplatz auf Ihrem Speicher (RAM) freizugeben. Sie können versuchen, einige der Programme mit hohem Speicherbedarf zu schließen. Sie können auch versuchen, Android Studio neu zu starten. Es hat bei mir funktioniert.
quelle
Entfernen Sie die Linie:
Aus Abhängigkeiten (in
build.gradle
):quelle
Bei mir funktioniert das:
quelle