Plusieurs dex fichiers - Conversion de Dalvik format de l'échec dans l'Incapacité d'exécuter dex
J'ai 2 app versions pro et lite. Ils sont tous les deux déjà sur le marché à v1.01. Je suis en train de la version v1.1 pour les deux. Cette mise à jour inclut SwawrmConnect intégration pour l'utilisation de leur classement global.
Je devrais commencer par dire que je sais que je ne suis pas le maintien de mon code correctement. J'ai 2 complètement séparé des applications et qui partagent probablement 90% de leur code. Je les entretenir séparément parce qu'après une semaine ou 2 ou 3 de ne pas comprendre comment le faire d'une bibliothèque et de partager le code, j'ai donné et tout simplement de cette façon est allé avec elle.
SwarmConnect est le premier pot que j'ai utilisé et a dû faire une bibliothèque à deux applications (voir la capture d'écran de la structure du fichier ci-dessous).
Maintenant ma version lite fonctionne et qu'il est prêt pour la diffusion. Je suis maintenant essayer d'obtenir ma version pro à l'endroit où il doit être pour la libération. Je suis assez certain que tous les produits java/xml les fichiers sont à jour et prêt. Quand je suis allé à exécuter la version pro dans l'émulateur, j'obtiens l'erreur ci-dessous:
[2013-04-18 11:24:41 - Dex Loader] Unable to execute dex: Multiple dex files define Lcom/swarmconnect/loopj/android/http/AsyncHttpResponseHandler;
[2013-04-18 11:24:41 - BibleTriviaPro] Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define Lcom/swarmconnect/loopj/android/http/AsyncHttpResponseHandler;
Choses que j'ai essayé:
- Propre/reconstruction
- Mise À Jour De L'Éclipse
- Supprimer de la corbeille et de la génération des dossiers
- Redémarrer Eclipse
- Plus quelques autres trucs
Mon fichier de structure:
Pourrait être le problème est que je suis en train d'utiliser SwarmConnect comme une bibliothèque pour les 2 projets (lite et pro)?
EDIT:
Ci-dessous est la structure de fichier pour la version lite qui fonctionne parfaitement. Compile et s'exécute sur l'émulateur.
- vous avez ajouté SwarmConnect deux fois. c'est le problème
- J'ai édité mon message d'ouverture. Vous pouvez voir que ma version Lite a la même apparence que ma version Pro. Pourquoi l'une et l'autre pas? J'ai les pots dans leur deux fois sur ma version Lite aussi et il fonctionne parfaitement.
- y compris un pot deux fois est sûr de provoquer des problèmes, n'importe quoi: je n'ai pas confiance à ce que Eclipse est vous dire à moins que vous vraiment regarder les fichiers de build vous-même.
- Ok, je peux corriger la version lite aussi alors. Si un pot ne doit être dans le projet une fois, où est le seul endroit où il devrait être? Si je sais que je peux supprimer l'autre(s).
- BibleTriviaPro a que peu de la croix-rouge attaché. Puisque vous êtes en train d'ajouter des images de votre Eclipse de la mise en page, pourriez-vous poster une image de la section des Problèmes ainsi?
- Vous pouvez l'ajouter à la version lite une fois et la version pro, une fois mais pas deux fois sur le même projet
- vous pouvez voir la structure du fichier pour BibleTriviaPro dans la 1ère capture d'écran. Le x rouge est le nom du projet, mais il n'est pas le cas ailleurs dans la structure du fichier. Il continue juste de poster le LogCat de sortie que j'ai dans le message d'ouverture.
- J'ai vu qu'. C'est pourquoi je pose la question sur le Problème de la section qui, dans ma perspective Java dans Eclipse peut être trouvé au bas. Parfois, Eclipse a un problème générique avec votre projet qui ne s'affichent pas dans un fichier spécifique, de sa façon de vous dire est en mettant que peu de la croix-rouge sur le projet lui-même.
- oh, ok. Je n'ai pas ouvert par défaut. Connaissez-vous le nom exact de ce point de vue? Je serais probablement le trouver sous soit
Window > Open Perspective > ...
ouWindow > Show View > ...
le plus probable. - Fenêtre>Afficher>les Problèmes
- S'avère être le même que celui que j'ai dans mon post ouverture:
Description Resource Path Location Type Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define Lcom/swarmconnect/loopj/android/http/AsyncHttpResponseHandler; BibleTriviaPro Unknown Android Packaging Problem
.
Vous devez vous connecter pour publier un commentaire.
Coïncidence, je suis tombé sur le même problème il suffit d'avant-hier. Voici ce que je vous suggère de le faire.
D'abord et avant tout, assurez-vous que vous disposez d'une sauvegarde de tous les pots résidant actuellement dans le 'Android Dépendances'/'libs' dossier.
Maintenant, permet de corriger la version lite d'abord en suivant ces étapes.
Supprimer tous les
jar
les fichiers à l'exceptionandroid-support-v4.jar
de la "Android Dépendances" dossier dans l'Explorateur de Projet dans Eclipse.De même supprimer tous les fichiers Jar sauf
android-support-v4.jar
de lalibs
dossier dans l'Explorateur de Projet dans Eclipse.Maintenant un clic Droit sur votre projet-> Sélectionnez Propriétés-> Sélectionnez Java Build Path-> Sélectionnez Add External JARs. Ajouter tous les
jar
fichiers (assurez-vous d'ajouter un particulierjar
fichier qu'une seule fois).Enfin nettoyer le projet et de le construire. Maintenant appliquer la même séquence d'étapes pour la version pro.
Cela devrait le faire.
Mise à JOUR:- Dans le cas où vous voir Eclipse mur de soutènement sur certains moment de la compilation des erreurs après avoir fait tout ce tout ce dont vous pourriez avoir à faire est de simplement fixer les temps de compilation des erreurs en faisant le nécessaire importations en appuyant sur Ctrl+Maj+O.
[Je suppose qu'il n'y a pas de lien entre les pro et lite versions du projet en termes de source de dépendances etc.. ce que je veux dire, en gros, ils sont totalement indépendants.]
Espère que cette aide.
Je soupçonne fortement que c'est votre problème
la raison d'être: lorsque vous ajoutez un projet de bibliothèque à un projet Android dans Eclipse, il n'apparaît pas dans votre répertoire libs. J'ai effectivement essayé d'ajouter juste la .le fichier jar à un projet et suis dit que c'était pas la bonne approche (au moins jusqu'à ce que l'API 14, je crois).
Ma conjecture est, dans votre "non-pro" vous n'avez pas de lien dans les options du projet et donc encore compile correctement. Néanmoins, vous devriez le lien de la façon que je viens de décrire, pour éviter des problèmes lors de la bibliothèque tente d'accéder à ses propres ressources.
La solution ci-dessus n'a pas fonctionné pour moi,Tout ce que j'avais à faire était d'ajouter les pots dans le dossier libs de l'extérieur et Décochez la case Android bibliothèques privées en vertu de l'ordonnance et de l'onglet exporter.
faire les étapes ci-dessus. Je ne sais pas pourquoi ce qui se passe.
J'ai essayé @Sriram la réponse ci-dessus. Il n'a pas de travail.
Ensuite, j'ai dû supprimer les bibliothèques du Projet->Propriétés->Java Build Path->Bibliothèques lieu et ajouter le véritable pot de l' (j'ai besoin de android-support-v4.jar et android-support-v13.jar) dans le dossier libs de mon projet. Puis il a travaillé:
(notez qu'il n'est pas Référencé de Librairies" dossier)
J'ai eu cette erreur parce que j'ai utilisé l'ensemble Android programme d'installation du Kit de Développement (Eclipse, plus SDK, daté 2/6/2013). La seule façon que j'ai été en mesure de s'en débarrasser était de désinstaller tout ça, et séparément installer Eclipse Pour les Développeurs Java à partir de eclipse.org et le SDK Android seulement à partir de l'Android site. L'Éclipse qui vient avec le kit a de drôles d'idées sur l'endroit où inclure les librairies de, pour ne pas mentionner quelques vestiges de morceaux de c++ et de gdb soutien.