38 votes

IntelliJ IDEA - Vous ne pouvez rien construire, obtenez toujours "le package R n'existe pas"

Je suis en train d'utiliser IntelliJ IDÉE de travailler sur une application Android avec un collègue qui ne jure que par ça, mais je suis incapable de construire des projets Android il m'envoie car à chaque fois que j'essaie une construction, je reçois un message d'erreur indiquant package R does not exist.

J'ai essayé tout ce que je pense de. Exemples et d'autres choses à noter sont les suivants:

  • Pour s'assurer que j'ai une version de l' local.properties le fichier pointant vers la racine de mon Android Sdk dossier.

  • Jongler avec différents paramètres de la structure du projet de dialogue (je ne vais pas tous les lister).

  • Le projet que je suis en train de travailler sur deux projets de bibliothèque avec également utiliser l' R de la classe et qu'ils fonctionnent très bien.

  • L'intellisense dans l'IDE reconnaît l' R de la classe et est livré avec les trucs que j'attends.

Toute aide serait grandement appréciée. Je sens que je suis absent quelque chose de fondamental.

34voto

xbakesx Points 3419

Je suis de marque nouvelle pour l'Ide, donc je m'excuse si cela ne fonctionne pas pour vous. Je rencontrais le même problème et la solution était d'ajouter une Android Facet à votre projet.

(Je suis sur un Mac, donc les directions ici peut être un peu hors, et il y a probablement de meilleures façons de trouver cette fenêtre, si oui faites le moi savoir!)

  1. Cliquez-droit sur votre projet et descendre à l' Open Module Settings (semble F4 marche aussi)
  2. Sélectionnez Facets dans la colonne d'extrême gauche
  3. Cliquez sur le bouton +
  4. Ajouter un Android Facet à votre projet, et le tour est joué!
  5. Vous pouvez avoir besoin d'importer votre Rs maintenant, qui pourrait être une grande douleur... alors j'espère que quelqu'un peut cadrer avec un moyen facile d'importer automatiquement

Espérons que cela aide quelqu'un!

25voto

Bulwinkel Points 31

Une autre solution possible à ceux listés ici est de vérifier que le nom du paquet dans votre AndroidManifest.xml correspond à celui de votre paquet actuel:

<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.yourpackagename" >

Mon paquet construisait bien jusqu'à ce que je refactored le nom du paquet, tout refactored sauf le nom du paquet dans le fichier manifeste (voir ci-dessus) qui a causé l'erreur "Le paquet R n'existe pas".

13voto

Richard Points 1071

Si vous rencontrez ceci avec un paquet qui a été construit auparavant, vous devez "reconstruire". Construire-> Reconstruire le projet. La suppression de gen ne le fait pas, car IDEA enregistre le R effectivement généré ailleurs.

4voto

Jason Points 566

J'ai commencé à jouer avec IntelliJ depuis que j'ai eu des problèmes avec le nouveau Android Studio et je voulais essayer quelque chose qui était un peu plus stable (je n'ai jamais vraiment utilisé avant). J'ai fini par trouver le redoutable "package R n'existe pas d'erreur". Dans mon expérience, c'est généralement quelque chose qui a foiré dans un fichier XML. Pour moi, le problème était en fait avec le AndroidManifest.xml fichier pour Android Module de la Bibliothèque que j'avais créé pour ActionBarSherlock. Pour quelque raison que ce soit, lorsqu'il a créé le AndroidManifest.xml fichier il n'a pas pris la peine d'utiliser le AndroidManifest.xml fichier qui est venu avec ABS et il a mis le suivant:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="com.example.ActionBarSherlockLibrary_4_3_1"
          android:versionCode="1"
          android:versionName="1.0">

    <application
        android:label="@string/app_name"
        android:icon="@drawable/ic_launcher">
        <activity
            android:name="ACTIVITY_ENTRY_NAME"
            android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
        </activity>
    </application>
</manifest>

Quand j'ai créé ce Module, j'ai choisi de Fichier > Nouveau Module... Puis, j'ai Sélectionné Module de la Bibliothèque en vertu de la section Android et du Contenu de la Racine j'ai parcouru pour l'emplacement des fichiers pour l'ABS (Autres domaines d'auto correctement rempli et je n'ai pas les modifier). J'ai ensuite cliqué sur terminer et il m'a incité si je voulais garder le fichier local ou le fichier de la mémoire de projet.les propriétés. J'ai choisi de garder le fichier local et il n'a pas à me demander pour tout les autres après.

Je n'ai aucune idée de pourquoi ça a foiré l'AndroidManifest.xml fichier (peut-être ce que j'ai fait ci-dessus a été mal...???), mais pour le fixer j'ai juste copié l'original AndroidManifest.xml que j'avais téléchargé la bibliothèque et remplacé les foiré AndroidManifest.xml fichier. Après que j'ai fait Construire > Projet de Reconstruction et il a résolu le "package R n'existe pas" d'erreurs.

Une autre pensée, @xbakesx mentionne les Facettes paramètres, et pour tous les modules que vous utilisez comme les bibliothèques, vous devriez assurez-vous que la Bibliothèque "module" est cochée sous des Facettes de ce Module. J'ai eu quelques problèmes avec ça au début, quand j'ai été à essayer de comprendre comment configurer les bibliothèques dans IntelliJ/Android Studio (j'ai vraiment utilisé Eclipse).

4voto

Youngjae Points 1457

Je viens de redémarrer IntelliJ et le problème a été résolu comme par magie. Essayez-le d'abord.

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