Je fais le Tutoriel Bloc-notes, exercice 2 . J'ai commencé par créer un nouveau Android et j'ai choisi Créer à partir de la source pour importer les fichiers source téléchargés pour l'exercice.
Mais maintenant, je reçois de nombreuses erreurs dans Eclipse, et le problème est qu'il n'y a pas de R.Java
classe. Comment puis-je résoudre ça? Le dossier gen/
est vide.
J'ai des erreurs sur Notepadv2.Java
et en res/layout/note_edit.xml
et les deux semblent être liés au fait que le R.Java
est manquant.
Voici mes import
instructions dans Notepadv2.Java
:
import Android.R;
import Android.app.ListActivity;
import Android.content.Intent;
import Android.database.Cursor;
import Android.os.Bundle;
import Android.view.ContextMenu;
import Android.view.ContextMenu.ContextMenuInfo;
import Android.view.Menu;
import Android.view.MenuItem;
import Android.view.View;
import Android.widget.ListView;
import Android.widget.SimpleCursorAdapter;
Ils sont créés par la commande Eclipse Ctrl + Shift + O .
Allez dans Project
et appuyez sur Clean
. Cela devrait, entre autres, régénérer votre fichier R.Java.
Débarrassez-vous également de tout import Android.R.*
déclarations, puis faites le nettoyage que j'ai mentionné.
Apparemment, le problème de Jonas était lié à des paramètres de build cible incorrects. Sa construction cible a été définie sur Android 2.1 (SDK v7) où son XML de disposition utilisait Android 2.2 (SDK v8) éléments (paramètre de disposition match_parent
), à cause de cela il n'y avait aucun moyen pour Eclipse de générer correctement le fichier R.Java qui a causé tous les problèmes.
Après une journée entière à essayer de trouver pourquoi le fichier R n'a pas été généré, j'ai constaté qu'après l'installation Android SDK Tools r22, une nouvelle option dans Tools était disponible: Android Outils de construction du SDK.
Après l'avoir installé, le fichier R a été généré à nouveau.
maintenant vous avez importé Android.R
au lieu de votre propre R ... Essayez de jeter un œil à votre vue "problèmes" si vous avez des erreurs dans l'un de vos fichiers xml ... débarrassez-vous du import Android.R
et commentez toutes les utilisations de R .*
Le nettoyage devrait aider lorsque votre projet n'a pas d'autres erreurs, alors vérifiez vos fichiers xml ou la dénomination des fichiers dans vos dossiers res
Vous utiliserez probablement une version incorrecte du SDK. Faites un clic droit sur votre projet. Sélectionnez Propriétés -> Android. Notez que 2.2 est le dernier SDK. Vérifiez-le et voyez s'il est compilé ...
Modifier
Faites aussi un nettoyage après
I Had a similar problem
La meilleure façon d'identifier ce problème est d'identifier les avertissements Lint :: * Clic droit sur project
> Android Tools
> Run Lint
: Common Errors
*
Enfin nettoyer le projet!
Mon collègue a ce problème - un redémarrage d'Eclipse l'a résolu.
Mettre à jour Android SDK Tools dans Android SDK Manager pour la révision 22.0.1. Cela a fonctionné pour moi.
Si vous rencontrez ce problème, cela signifie que la propriété "match_parent" n'est pas prise en charge dans votre contenu. Au lieu de cela, "fill_parent" est utilisé.
"fill_parent: la vue doit être aussi grande que son parent (moins le remplissage). Cette constante est déconseillée à partir du niveau 8 de l'API et est remplacée par match_parent."
J'ai juste eu un problème où un projet qui fonctionnait précédemment a cessé de fonctionner avec tout ce qui faisait référence à R étant publié comme des erreurs parce que R.Java n'était pas généré.
** * VERIFIEZ AUSSI LA VUE DE LA CONSOLE * *
J'avais (à l'aide de Finder) fait une sauvegarde de l'icône principale (même pas utilisée) donc l'un des dossiers res (hdpi) avait
icon.png copie de icon.png
La console a indiqué que "copie de icon.png" n'était pas un nom de fichier valide. Aucune erreur n'a été signalée ailleurs - pas de X rouge dans les dossiers res ....
mais en remplaçant les espaces par "_" et tout revient à la normale ....
Il s'agit en fait d'un bogue dans le code des didacticiels. J'avais le même problème et j'ai finalement réalisé que le problème se trouvait dans le fichier "note_edit.xml".
Certains des attributs layout_heigh/width ont été définis sur "match_parent" qui n'est pas une valeur valide, ils sont censés être définis sur "fill_parent".
Cela lançait un bogue, ce qui entraînait l'échec de la génération du fichier R.Java. Donc, si vous rencontrez ce problème, ou un problème similaire, vérifiez tous vos fichiers xml et assurez-vous qu'aucun d'entre eux ne contient d'erreurs.
Avez-vous installé le plug-in Android?
Votre projet doit être du type Android.
J'ai également rencontré des problèmes tels que R.Java
manquant, et Eclipse se plaignant également qu'il y a des erreurs dans mon code (affichage d'une icône X rouge par rapport aux fichiers de classe) quand il n'y a pas eu d'erreurs.
La seule méthode que j'ai trouvée pour résoudre ce problème est de nettoyer le projet en sélectionnant Project > Clean
Cela semble résoudre le problème pour moi, en exécutant Eclipse 3.5.2
J'ai rencontré ce problème à plusieurs reprises. Le problème racine étant
ou
Vérifiez ces deux et faites une construction propre comme suggéré dans les options précédentes, cela devrait fonctionner correctement.
Recherchez les erreurs dans l'onglet "Problèmes" ou "Console".
Enfin: avez-vous/Eclipse dispose d'autorisations d'écriture dans le dossier du projet? (également moins probable est l'espace disque)
Cela pourrait également être le problème d'un fichier de disposition xml incorrect par exemple. Si vos fichiers xml ne sont pas valides (contenant des erreurs), le fichier R ne sera pas régénéré après un nettoyage. Si vous corrigez cela, le fichier R sera généré automatiquement à nouveau.
ouais j'ai le même problème. je l'ai résolu en sélectionnant Projet dans la barre d'outils nettoyer le projet réinitialiser également l'option de construction automatique quelques fois nécessaires pour changer le nom du format de correspondance du fichier xml [az] [0-9] les majuscules doivent être modifié
J'ai ce problème à cause d'une erreur interne dans Android plugin. Lorsque j'ai essayé d'ouvrir du XML de mise en page, j'ai une erreur:
The project target (Android 2.2) was not properly loaded.
Heureusement, dans mon cas, le redémarrage d'Eclipse et le nettoyage du projet ont aidé.
Selon mon expérience, je peux résumer:
1.Le problème se réfère principalement aux problèmes de syntaxe qui peuvent survenir sur les fichiers xml.
Vous pouvez copier accidentellement AndroidManifest.xml dans des sous-dossiers.
1.Un fichier est une extension non définie.
Après avoir vérifié tous ces éléments, allez dans Projet-> Nettoyer ou supprimez simplement les dossiers/bin et/gen.
Juste Redémarrer l'Eclipse résoudra ce problème car l'espace de travail sera fraîchement construit! aller à
Fichier -> Redémarrer
C'est le moyen le plus simple d'éviter la frustration en allant dans Build, properties, blah blah .....
En voici une autre: j'étais sur le point de pleurer, mais j'ai réussi à obtenir mon bien-aimé R.Java
retour:
Je n'avais rien mis à jour dans mon Android depuis un bon moment. J'avais besoin d'une fonctionnalité et j'ai exécuté le gestionnaire de SDK. En plus de ce dont j'avais besoin, j'ai essentiellement vérifié tout ce qu'il voulait mettre à jour. Après mon R.Java
a disparu dans Eclipse.
Pour faire court, dans le SDK Manager, il y avait une nouvelle entrée "Android SDK Build-tools" qui, je suppose, n'était pas là la dernière fois que j'avais mis à jour. C'est une sorte de nom évident, vraiment. Après avoir installé celui-là, Eclipse m'a donné mon R.Java
retour.
Il semble que lorsque vous passez au dernier SDK (2.2), le bâtiment ne génère plus de fichier R.Java. Ou du moins pas comme d'habitude. Pour résoudre ce problème, supprimez le package sous le dossier gen et nettoyez sans construire. Cela résout le problème pour moi.