Dex konnte nicht ausgeführt werden: GC Overhead Limit überschritten in Eclipse

Als ich das Git-Projekt OsmAnd herunterlud und ging, um es zu kompilieren, gab Eclipse diese Fehler zurück:

[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 -Xms40m -Xmx384m in eclipse.ini ändern muss. Umwandlung in Dalvik-Format fehlgeschlagen: Dex kann nicht ausgeführt werden: Java-Heap-Space .
Ich habe das Projekt gereinigt und Eclipse neu gestartet, aber es half nicht.

Ich habe diesen Link gefunden: Tipps für Android-Entwickler: "Umwandlung in Dalvik-Format fehlgeschlagen: Kann nicht ausgeführt werden dex: null" Aber ich weiß nicht, welche .jar von meinem Projekt, um die Eingabe zu ändern. Wenn jemand helfen kann, kann ich die senden Projekt zu ihnen.

  • Wie Set-Hintergrund programmgesteuert in Android
  • Problem beim Herunterladen mehrerer Dateien mit AsyncTask
  • Volley aus Speicherfehler, seltsamer Zuweisungsversuch
  • Android nicht töten Aktivitäten aus Stack, wenn Speicher ist niedrig
  • Android: OutOfMemory Fehler und der Backstack
  • Xamarin.Forms ListView OutOfMemoryError Ausnahme auf Android
  • Großes Bild von der SD-Karte in Android anzeigen
  • Android ViewPager / PagerAdapter ImageView OutOfMemoryError
  • 9 Solutions collect form web for “Dex konnte nicht ausgeführt werden: GC Overhead Limit überschritten in Eclipse”

    Es kann durch Ändern der VM-Werte in Eclipse.ini behoben werden. Setzen Sie die Werte auf 512 und 1024 wie folgt:

     openFile --launcher.XXMaxPermSize 512M -showsplash org.eclipse.platform --launcher.defaultAction openFile -vmargs -Dosgi.requiredJavaVersion=1.5 -Xms512m -Xmx1024m 

    Der geänderte Bereich im Bild Bildbeschreibung hier eingeben

    Für mich folgten Schritte

     1) Open eclipse.ini file 2)changed -Xms40m -Xmx512m to -Xms512m -Xmx1024m 3)Restart eclipse 

    Siehe hier

    Eclipse.ini sieht so aus.

     -startup plugins/org.eclipse.equinox.launcher_1.3.0.v20130327-1440.jar --launcher.library plugins/org.eclipse.equinox.launcher.gtk.linux.x86_64_1.1.200.v20140116-2212 -product org.eclipse.epp.package.jee.product --launcher.defaultAction openFile -showsplash org.eclipse.platform --launcher.XXMaxPermSize 256m --launcher.defaultAction openFile --launcher.appendVmargs -vmargs -Dosgi.requiredJavaVersion=1.6 -XX:MaxPermSize=256m -Xms40m -Xmx512m -Xmx1024m 

    Lassen Sie mich davon ausgehen, dieses Problem verursacht durch die Android-XML, weil sehr oft Sie es öffnen

    Diese folgenden zwei Fragen auf StackOverFlow werden miteinander verhandelt:

    Jedes Mal, wenn ich auf eine Android-XML-Datei in Eclipse klicke, lädt es Daten für alle API-Versionen

    und

    Dex konnte nicht ausgeführt werden: GC Overhead Limit überschritten

    Ich habe eine weitere Lösung gefunden , um dieses Problem zu lösen, außer die VM-Werte zu erhöhen oder auf eine ältere ADT-Version zu reduzieren (22.6.2 oder 23.2)

    Hinweis:

    Einige der älteren ADT-Versionen, die das XML nicht jedes Mal laden, wenn Sie es öffnen, gibt es keinen Speicherüberlauf, um diese GC-Overhead-Grenze zu überschreiten, wie auf dem ersten Thread diskutiert

    Lösung:

    Am unteren Ende der Sonnenfinsternis gibt es Trash-Dose-Symbol, das sagt, Garbage Collector . Wenn Sie eine XML-Datei von Android schließen, vergessen Sie nicht, einfach auf den Papierkorb zu klicken oder Müllsammler auszuführen , um Speicher freizugeben. Auf diese Weise können Sie den Arbeitsbereich vor dem Absturz dieser Art von Fehler zu schützen: D

    Dies könnte eine ultimative Lösung sein, weil Sie den VM-Wert nicht über Ihre RAM-Grenze hinaus erhöhen können, wenn Sie Ihr Android-XML sehr häufig öffnen, besonders wenn Sie viel UI arbeiten wie ich: P

    Ich hoffe das würde jedem helfen, der zu diesem Thread kommen wird 🙂

    Bleib ruhig und Code an

    Nach 12 Stunden mit diesem Fehler und kein 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" mit dem Wert "-Xmx512M". Diesen Wert auf den gleichen Wert wie in eclipse.ini (-Xmx4096M) zu ändern, konnte ich noch einmal mein Projekt in eine APK-Datei exportieren.

    Ich kenne den Grund hinter dieser Arbeit nicht, aber es funktioniert für mich die ganze Zeit, wenn alle oben genannten nicht.

    Beginne die Eklipse nicht aus einer Abkürzung oder einem Link. Öffnen Sie es immer aus der eclipse.exe in Ihrem Eclipse-Ordner, der Ordner, der die eclipse.ini hält

    Anmerkung – ich habe nur für Linux versucht.

    Um diese lästige Nachricht zu vermeiden, musste ich meine Konfiguration wie folgt ändern:

     -startup plugins/org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar --launcher.library plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.200.v20120913- 144807 -product com.android.ide.eclipse.adt.package.adtproduct -showsplash org.eclipse.platform --launcher.XXMaxPermSize 1024m --launcher.defaultAction openFile -vmargs -Dosgi.requiredJavaVersion=1.6 -XX:MaxPermSize=256m -Xms512m -Xmx1024m 

    Basierend auf der Antwort als richtig markiert, ändern

     -XX:MaxPermSize=256m -Xms512m -Xmx1024m 

    und:

     --launcher.XXMaxPermSize 1024m 
     1) Open eclipse.ini file 2)change -Xms40m -Xmx512m to -Xms512m -Xmx1024m 3)Restart eclipse 

    Die gleiche eclipse.ini- Datei befindet sich in Eclipse in diesem Root-Pfad der Eclipse selbst wie:

     C:\Users\username\Downloads\adt-bundle-windows-x86_64-20140702\eclipse\eclipse.ini 

    Die gleiche Datei befindet sich im Android-Studio-Projekt: –

     C:\Users\username\AppData\Local\Android\sdk\tools\lib\monitor-x86_64\monitor(Type:Configuration settings) 

    Wenn diese Antworten nicht funktionieren (Sie haben nicht für mich) dann versuchen Sie dies:

    1) Machen Sie eine Kopie des .metadata-Ordners in Ihrem Arbeitsbereich.

    2) Löschen Sie Ihr .metadata-Verzeichnis NACH DEM KOPIEREN

    3) Open Eclipse und schließen Eclipse.

    4) Kopiere deinen Plugins-Ordner von deiner alten Metadate auf deine neue .metadata

    5) Importieren Sie alle Projekte wieder in Ihren Arbeitsbereich

    6) Halten Sie Ruhe und Code auf!

    Das Android ist ein Google Android Fan-Website, Alles über Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.