311 votes

Développer pour Android dans Eclipse: R.java ne génère pas

J’ai découvert que mon R.java n’est jamais mis à jour, il ne contient pas d’informations sur mes nouvelles ressources, alors j’ai décidé de le supprimer et pensé que Eclipse va générer un nouveau. Mais qui n’est pas arrivé et je n’ai pas maintenant R.java. Comment est-ce que je peux générer un ? J’utilise Win7, si cela change quelque chose.

De l’un des commentaires : « faire projet-> Clean, c’est ce qui a causé le problème pour moi. Suppressions de nettoyage R.java...and pour une raison quelconque le plugin n'est pas régénérer le fichier. »

300voto

Muz Points 1116

J'ai trouvé ce qui m'arrive avec une fracture de la mise en page et tout explose. Détendez-vous, c'est comme cette vieille erreur lorsque vous d'abord appris la programmation C, où vous oubliez un point-virgule et il génère une centaine d'erreurs. Beaucoup de panique, appuyez sur tous les boutons, et le fait qu'aggraver les choses.

Solution

  • Assurez-vous que tout ce que l' R. liens n'est pas cassé. Corriger toutes les erreurs dans vos fichiers XML. Si quoi que ce soit dans le ADKs sont cassés, R ne régénèrent pas.
  • Si vous en quelque sorte touché quelque chose et créé import android.R de votre activité, de la supprimer.
  • Exécutez Le Projet -> Clean. Cela permettra de supprimer et de régénérer R et BuildConfig.
  • Assurez - Project -> Build Automatiquement est cochée. Si pas, construire manuellement via Menu -> Project -> Build Project .
  • Attendez quelques secondes pour que les erreurs à disparaître.
  • Si cela ne fonctionne pas, supprimez tout le texte à l'intérieur de l' /gen/ dossier
  • Si cela ne fonctionne toujours pas, essayez en cliquant-droit sur votre projet -> Android Outils -> Réparer les Propriétés du Projet.
  • Vérifiez votre *.les propriétés des fichiers (dans le dossier racine de votre dossier app) et assurez-vous que les liens y sont pas cassés.
  • Cliquez-droit sur votre projet > propriétés > Android. Regardez le Projet de construction de la Cible et de la Bibliothèque de sections sur le côté droit de la page. Votre Cible doit correspondre à la cible de votre AndroidManifest.xml. Donc, si elle est définie à l'objectif 17 dans AndroidManifest, assurez-vous que le Nom de la Cible est Android 4.2. Si votre Bibliothèque a un X sous la référence, de supprimer et de rajouter de la bibliothèque jusqu'à ce qu'il y a une coche verte. Cela peut se produire si vous avez déménagé quelques fichiers et dossiers.

Que faire si R n'est pas régénérer

Cela se produit généralement lorsque vous avez cassé un fichier xml.

  • Vérifier les erreurs à l'intérieur de vos fichiers XML, principalement au sein de l' /res/ dossier
  • Lieux communs sont /layout/ et /valeurs/ surtout si vous avez modifié l'un d'eux récemment
  • Vérifiez AndroidManifest.xml, je trouve que, souvent, j'ai changer de chaîne, et d'oublier de changer le nom de la chaîne à partir d' AndroidManifest.xml.
  • Vérifiez que Android SDK Build-tools est installé. Fenêtre->Android SDK Manager->Outils->version du SDK Android-outils de
  • Assurez-vous que lorsque vous mettez à jour l' Android SDK Tools, vous pouvez également mettre à jour l' Android SDK Platform-tools et Android ADK Build-tools. L'échec de la construction en silence si elles ne correspondent pas.
  • Si vous ne pouvez pas trouver le problème, clic droit /gen/ -> Restaurer à partir de l'histoire locale... -> cochez R.java -> cliquez sur Restaurer. Même si ça ne résout pas le problème, mais il va effacer le plus d'erreurs pour rendre le problème plus facile à trouver.

Je sais qu'il y a déjà beaucoup de réponses ici, mais c'est le principal lien sur Google, je suis donc la compilation de tous les conseils ici et j'espère que ça aide quelqu'un d'autre de nouveau à cela :)

177voto

aioobe Points 158466

Ce site suggère:

si vous exécutez un propre sur le projet, il doit se régénérer tous les fichiers java générés, à savoir R.

...et...

Dans Eclipse, sous le menu Projet, est une option de génération automatique. Qui peut vous aider à construire le R.java fichier chaque fois que des modifications sont fait. Le Propre... option est également là dans le cadre du Projet.

Ce site propose une autre solution.

Il semble être un problème commun à de nombreuses réponses différentes facilement disponible par le biais de google :)

40voto

Amit Kumar Points 121

J’ai eu le même problème. Quand j’ai vérifié, j’ai trouvé que le nom de la ressource XML sous disposition n’avait pas la convention de nommage correcte. Il avait quelques majuscules. Donc je l’ai renommé pour mettre toutes les lettres en minuscules et la magie a fonctionné.

28voto

Pawel Points 71

Le R.class peut disparaissent soudainement fait quand il y a des erreurs dans les fichiers xml. Par exemple lorsque vous ajoutez un fichier xml avec lettres majuscules dans le nom comme myCoolLayout.xml qui n’est pas autorisé. Ou si vous avez des références qui ne pointent vers les fichiers existants etc..

17voto

masi Points 771

Dans eclipse, il suffit d'utiliser du Projet --> clean pour nettoyer le projet. L' R. java va être automatiquement (re) création.

SI pour quelque raison que dosn pas: ASSUREZ-vous que votre layout.xml les fichiers ne contient des erreurs. Eclipse semble être abit buggy ici: parfois, il dosnt marquer les erreurs dans le XML, ni l'explorateur de packages. dans un tel cas: prendre un coup d'oeil à la "console" ou "problèmes" à vue après l'utilisation de "propre". Toutes les erreurs doivent être affichées. Corriger et refaire un propre.

REMARQUE: il n'est PAS nécessaire de corriger les erreurs que vous obtenez parce qu'il manque un R de fichier! Juste corriger le xml et d'autres projets d'erreurs et d'utilisation propre!

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