Impossible d'exécuter dex: GC dépassement de la limite supérieure dans Eclipse

quand j'ai téléchargé le projet git OsmAnd et suis allé le compiler, Eclipse a renvoyé ces erreurs:

[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 et Stackoverflow ont dit que je dois changer -Xms40m -Xmx384m dans eclipse.ini . la Conversion au format Dalvik a échoué: impossible d'exécuter dex: Java heap space .

J'ai nettoyé le projet et redémarré Eclipse, mais ça n'a pas aidé.

I trouvé ce lien: conseils pour développeur Android:" Conversion au format Dalvik échoué: incapable d'exécuter dex: null" Mais je ne sais pas qui .jar de mon projet pour modifier l'entrée. Si quelqu'un peut aider, je peux vous envoyer le projet.

207
demandé sur Community 2012-02-27 23:44:02

9 réponses

il peut être corrigé en changeant les valeurs de VM dans Eclipse.ini. Réglez les valeurs à 512 et 1024 comme suit:

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

la zone modifiée dans l'image enter image description here

436
répondu user1457659 2015-05-21 13:24:48

Pour moi étapes suivantes travaillé

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

3)Restart eclipse

voir ici

24
répondu Sunil Kumar Sahoo 2014-12-31 05:11:46

eclipse.ini ressembler à ceci.

-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
7
répondu Roadies 2014-10-16 09:54:32

laissez-moi supposer ce problème causé par le XML Android, en raison de très fréquemment vous l'ouvrez ""

ces deux numéros suivants sur StackOverFlow sont réalisés l'un avec l'autre:

chaque fois que je clique sur un fichier XML Android dans Eclipse, il charge des données pour toutes les versions API

et

impossible d'exécuter dex: limite supérieure de la CG dépassée

j'ai trouvé la solution pour résoudre ce problème autre que l'augmentation de la VM valeurs ou la rétrogradation à un ancien ADT version (22.6.2 ou 23,2)

Note:

certaines des anciennes versions de L'ADT qui ne chargent pas le XML à chaque fois que vous ouvrez de sorte qu'il n'y a pas de débordement de mémoire pour causer ce limite supérieure de GC dépassé comme discuté sur le premier fil

Solution:

au bas de l'éclipse il y aura le symbole de la poubelle qui indique courir collecteur D'ordures . Chaque fois que vous fermez un fichier XML d'android n'oubliez pas de cliquer sur le Corbeille ou courir collecteur de déchets pour libérer la mémoire. De cette façon, vous pouvez protéger l'espace de travail contre ce genre d'erreur :D

cela pourrait être une solution ultime parce que vous ne pouvez pas augmenter la valeur de VM au-delà de votre limite de RAM si vous ouvrez très fréquemment votre android XML surtout si vous faites beaucoup de travaux D'UI comme moi :p

j'espère que cela aidera tous ceux qui viendront à ce fil:)

gardez le calme et le Code sur

5
répondu Akbar Sha Ebrahim 2014-07-10 11:21:02

après 12 heures avec cette erreur et aucun succès avec Changer l'éclipse.fichier ini j'ai finalement trouvé la bonne solution. Dans mes variables d'environnement il y avait une variable nommée "_JAVA_OPTIONS" contenant la valeur "-Xmx512M". Changer cette valeur à la même valeur que dans eclipse.ini (- Xmx4096M) j'ai pu une fois de plus exporter mon projet vers un fichier APK.

1
répondu Viktor 2015-03-08 21:44:54

Je ne sais pas la raison de ce travail de contournement, mais il fonctionne pour moi tout le temps quand tout ce qui précède ne le font pas.

ne pas démarrer éclipse à partir d'un raccourci ou d'un lien. Toujours l'ouvrir à partir du eclipse.exe dans votre dossier eclipse, le dossier même qui contient le eclipse.ini

Note-j'ai essayé seulement pour linux.

1
répondu Atul O Holic 2015-05-30 20:41:02

pour éviter ce message fâcheux, j'ai dû modifier ma configuration comme suit:

-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

basé sur la réponse marquée comme correct, changeant

-XX:MaxPermSize=256m
-Xms512m
-Xmx1024m

et:

--launcher.XXMaxPermSize
1024m
1
répondu Jorgesys 2015-07-24 23:04:39
1) Open eclipse.ini file
2)change
-Xms40m
-Xmx512m
to 
-Xms512m
-Xmx1024m
3)Restart eclipse

Le même eclipse.le fichier ini sera situé dans Eclipse dans ce chemin racine d'eclipse lui-même comme:

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

Le même fichier sera situé dans android studio de projet:-

C:\Users\username\AppData\Local\Android\sdk\tools\lib\monitor-x86_64\monitor(Type:Configuration settings)
1
répondu anand krish 2016-08-20 19:06:28

Si ces réponses ne fonctionnent pas (Ils n'ont pas pour moi), puis essayez ce qui suit:

1) Faites une copie de votre .dossier de métadonnées dans votre espace de travail.

2) supprimer votre .metadata directory AFTER MAKING A COPY

3) Eclipse ouverte et éclipse fermée.

4) Copiez votre dossier plugins à partir de votre ancien .métadonnées à votre nouveau .métadonnées

5) importez tous les projets dans votre espace de travail

6) gardez le calme et le Code sur!

0
répondu tricknology 2015-01-08 11:09:26