142 votes

le paquet R n'existe pas

Je reçois le paquet redouté R n'existe pas, ça me tue. Le code est bon, j'ai des applications sur le marché qui utilisent ce code.

Maintenant, ça affecte les simples webview applications. o.0

R.string.app_name est erroné mon main.xml y string.xml est bien. Je suis tellement confus.

J'ai réouvert une ancienne version pour "borrow" un peu de code et il a été inondé de R. errors. J'ai fait un nettoyage et rien n'a changé sauf l'importation. R.android étant ajouté en haut.

J'ai même chargé dans Netbeans et j'obtiens la même chose. Le nettoyage ne fonctionne pas. Puis-je écrire le R.java me classer moi-même ?

Qu'est-ce que c'est ? R chose ? n'est-ce pas R . censé correspondre à R.java

11voto

nandeesh Points 16095

R.java est un fichier autogénéré, il n'est généralement pas compilé si vous avez des erreurs dans le fichier xml.

Non Vous ne pouvez pas écrire votre propre fichier R.java, il doit être généré par le compilateur de ressources.

Vérifiez l'absence d'erreurs dans tous vos fichiers xml.

8voto

Emanuele Greco Points 5089

Je suppose que ça marchait avant mais que maintenant ça ne marche plus

Cela peut se produire si vous changez le nom du PACKAGE dans votre fichier MANIFEST.

<manifest
   package="com.example.android...."

Si vous voulez changer le nom du paquet

  1. Changez le nom du paquet manuellement dans le fichier manifeste.
  2. Cliquez sur votre classe R.java et appuyez sur F6. Cela vous permettra de déplacer la classe vers un autre paquet, et toutes les références à cette classe seront mises à jour.

6voto

DomQ Points 1166

La classe R Le code Java est généré automatiquement à partir de vos fichiers XML (disposition de l'interface utilisateur, chaînes d'internationalisation, etc.) Si le code fonctionnait auparavant (ce qui semble être le cas), vous devez indiquer à votre IDE de régénérer ces fichiers d'une manière ou d'une autre :

  • Dans IntelliJ, sélectionnez Outils > Android > Générer des sources pour <projet>.
  • (Si vous connaissez le chemin dans un autre IDE, n'hésitez pas à modifier cette réponse).

5voto

MPV Points 104

Cela peut se produire lorsque vous utilisez R dans des sous-paquets Exemple :

com.example ; // Paquet app et ressources principales mappées au paquet app

com.example.order ; // -sub package

dans le sous-paquet si vous avez besoin d'accéder à une ressource, par exemple,

R.Layout.orderLayout - Ici, R ne sera pas disponible.

Pour résoudre ce problème, vous devez importer le R du paquet principal, par exemple. Pour les fichiers du dossier/package com.example.order, vous devez importer les fichiers suivants

paquet com.example.order Importation de com.example.R ;

4voto

Jin Points 1642

Je viens de rencontrer cette erreur en utilisant Bazel pour construire une application Android :

error: package R does not exist
                + mContext.getString(R.string.common_string),
                                      ^
Target //libraries/common:common_paidRelease failed to build
Use --verbose_failures to see the command lines of failed build steps.

Assurez-vous que votre android_library / android_binary utilise un AndroidManifest.xml avec le bon package= et si vous utilisez l'attribut custom_package l'attribut android_library o android_binary assurez-vous qu'il est écrit correctement.

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