Als ich das Git-Projekt OsmAnd heruntergeladen und kompiliert habe, hat Eclipse die folgenden Fehler zurückgegeben:
[Dex Loader] Unable to execute dex: GC overhead limit exceeded
[OsmAnd] Conversion to Dalvik format failed:
Unable to execute dex: GC overhead limit exceeded
Google und Stackoverflow sagte , dass ich ändern muss -Xms40m
-Xmx384m
in eclipse.ini
.
Konvertierung in das Dalvik-Format fehlgeschlagen: Dex: Java-Heapspeicher kann nicht ausgeführt werden .
Ich habe das Projekt bereinigt und Eclipse neu gestartet, aber es hat nicht geholfen.
Ich habe diesen Link gefunden: Tipps für Android-Entwickler: „Konvertierung in das Dalvik-Format fehlgeschlagen: Dex: null kann nicht ausgeführt werden.“
Ich weiß jedoch nicht, in welchem .jar
Projekt ich die Eingabe ändern soll. Wenn jemand helfen kann, kann ich das Projekt an senden Sie.
quelle
--launcher.XXMaxPermSize 512m
zweimal?Bei mir haben folgende Schritte funktioniert
Siehe hier
quelle
eclipse.ini sieht so aus.
quelle
Lassen Sie mich dieses Problem annehmen, das durch Android XML verursacht wird, weil Sie es sehr häufig öffnen
Die folgenden zwei Probleme bei StackOverFlow werden miteinander behoben:
Jedes Mal, wenn ich in Eclipse auf eine Android-XML-Datei klicke, werden Daten für alle API-Versionen geladen
und
Dex kann nicht ausgeführt werden: GC-Overhead-Limit überschritten
Ich habe eine weitere Lösung gefunden , um dieses Problem zu beheben, außer die VM-Werte zu erhöhen oder auf eine ältere ADT-Version (22.6.2 oder 23.2) herunterzustufen.
Hinweis:
Einige der älteren ADT-Versionen laden das XML nicht jedes Mal, wenn Sie es öffnen, sodass kein Speicherüberlauf auftritt, der dazu führt, dass dieses GC-Overhead-Limit überschritten wird, wie im ersten Thread erläutert
Lösung:
Am unteren Rand der Sonnenfinsternis befindet sich das Papierkorbsymbol " Garbage Collector ausführen" . Wenn Sie eine XML-Datei von Android schließen, vergessen Sie nicht, einfach auf den Papierkorb zu klicken oder Garbage Collector auszuführen , um Speicher freizugeben. Auf diese Weise können Sie den Arbeitsbereich vor Abstürzen dieser Art von Fehlern schützen: D.
Dies könnte eine ultimative Lösung sein, da Sie den VM-Wert nicht über Ihr RAM-Limit hinaus erhöhen können, wenn Sie Ihr Android-XML sehr häufig öffnen, insbesondere wenn Sie viele UI-Arbeiten wie ich ausführen: P.
Ich hoffe das würde jedem helfen, der zu diesem Thread kommt :)
Bleib ruhig und Code an
quelle
Nach 12 Stunden mit diesem Fehler und ohne Erfolg beim Ändern der Datei eclipse.ini habe ich endlich die richtige Lösung gefunden. In meinen Umgebungsvariablen gab es eine Variable namens "_JAVA_OPTIONS", die den Wert "-Xmx512M" enthielt. Ändern dieses Werts auf den gleichen Wert wie in eclipse.ini (-Xmx4096M) Ich konnte mein Projekt erneut in eine APK-Datei exportieren.
quelle
Ich kenne den Grund für diese Umgehung NICHT, aber es funktioniert immer für mich, wenn all dies nicht der Fall ist.
Starten Sie Eclipse nicht über eine Verknüpfung oder einen Link. Öffnen Sie es immer aus dem
eclipse.exe
Ordner in Ihrem Eclipse-Ordner, in dem sich der Ordner befindeteclipse.ini
Hinweis - Ich habe es nur für Linux versucht.
quelle
Um diese nervige Meldung zu vermeiden, musste ich meine Konfiguration wie folgt ändern:
basierend auf der als richtig markierten Antwort, die sich ändert
und:
quelle
Die gleiche eclipse.ini Datei wird in Eclipse in diesem Stammpfad von Eclipse selbst wie befindet:
Die gleiche Datei befindet sich im Android Studio-Projekt: -
quelle
Wenn diese Antworten nicht funktionieren (für mich nicht), versuchen Sie Folgendes:
1) Erstellen Sie eine Kopie Ihres Metadatenordners in Ihrem Arbeitsbereich.
2) Löschen Sie Ihr .metadata-Verzeichnis, nachdem Sie eine Kopie erstellt haben
3) Öffnen Sie Eclipse und schließen Sie Eclipse.
4) Kopieren Sie Ihren Plugins-Ordner von Ihren alten .metadata in Ihre neuen .metadata
5) Importieren Sie alle Projekte zurück in Ihren Arbeitsbereich
6) Bleib ruhig und Code an!
quelle