33 votes

Android: la conversion au format Dalvik a échoué: impossible d'exécuter dex: null

Je suis en train d'utiliser le SmugFig SmugMug API sur Android. Il a été conçu pour J2SE j'imagine, donc je ne suis pas sûr qu'il fera le même travail sur Android, mais j'ai pensé que c'était la peine d'essayer, au lieu d'essayer de créer mon propre API.

Lorsque je charge le projet, j'obtiens l'erreur suivante:

Conversion to Dalvik format failed: Unable to execute dex: null

Il ne dit pas quel paquet il échoue sur, juste "Android Emballage Problème", mais il ne l'a pas fait avant, j'ai ajouté SmugFig et c'est la dépendance des POTS pour le build path.

Où dois-je chercher? Ou est-ce surtout moi que ça ne fonctionne pas avec les bibliothèques?

41voto

ken Points 421

J'ai trouvé une entrée de blog qui indique l'augmentation de la mémoire allouée dans eclipse.ini à ceci: -Xms128m -Xmx512m ou quelque chose de plus, mais cela ne m'a pas été utile.

Cependant, j'ai trouvé un autre billet qui suggérait de faire Project> Clean et qui le corrigeait pour moi. Je pense que cela se produit lorsque vous arrêtez Eclipse sans éteindre d'abord l'émulateur. Jolie punaise. Passé quelques heures à chercher la solution ce matin ... grrrrrrr :-(

16voto

Chu Chau Points 36

Aller à Projet » Propriétés » Java Build Path » Bibliothèques et de supprimer tout sauf le "Android X. Y" (dans mon cas, Android 1.5). cliquez sur OK. Aller à Projet » Propre » Propre projets sélectionnés ci-dessous » sélectionnez votre projet et cliquez sur OK. Cela devrait fonctionner.

Il est également possible que vous ayez un fichier JAR qui se trouve quelque part dans vos dossiers de projet (j'avais copié le Admob fichier JAR dans mon dossier src), PUIS de l'ajouter en tant que Java Chemin de la Bibliothèque. Il ne se présente pas sous l'Explorateur de packages, de sorte que vous ne le remarquez pas, mais il est compté deux fois, causant la redoutable Dalvik erreur 1.

Une autre raison pourrait être forfait de conflits de nom. Supposons que vous avez un package com.abc.xyz et une classe nommée A.java à l'intérieur de ce paquet, et un autre projet de bibliothèque (qui est ajouté à la dépendance de ce projet) qui contient la même com.abc.xyz.A.java puis vous sera exactement la même erreur. Cela signifie, vous avez de multiples références pour le même fichier A.java et ne peut pas correctement le construire.

6voto

monsta Points 71

Après l'Éclipse DDMS mise à jour 8.0.0 est venu avec la version d'Android 2.3 cette erreur est soudainement apparu.

Aucune des suggestions ci-dessus aidé, mais il s'est avéré que la racine du problème était un projet référencé (quelques classes partagé entre le serveur et côté client).

Une fois que j'ai enlevé la référence de projet et intégré et inclus un pot de l'une fois le projet référencé le problème a cessé d'exister.

Semble que quelque chose est allé voyous dans DDMS 8.0.0 avec des projets référencés.

5voto

Das Points 2137

Ce qui a fonctionné pour moi a été de supprimer la référence android.jar dans

Configurer le chemin de construction -> Chemin de construction Java -> Bibliothèques

Laissez la référence de la bibliothèque Android 3.0.

4voto

Regish K Nair Points 41

c'est simplement à cause de la taille de tas occupée par certains fichiers JAR ... qui peuvent être supprimés manuellement ...

sinon, la meilleure option consiste à modifier le fichier Eclipse.ini dans le dossier eclipse .....

ajoutez -Xmx1024m au fichier pour que la taille de la mémoire soit de 1 Go ... ça marche à coup sûr .....

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X