Comment puis-je ajouter une bibliothèque (android-support-v7-appcompat) dans IntelliJ IDEA
J'ai créé un projet, copié les fichiers de ressources dans le projet, de la bibliothèque, de l'ajouter à la structure du projet, prescrit style Theme.AppCompat
.
Compilé sans erreurs, mais quand vous commencez à la relégation Exception:
08-03 00:50:00.406: ERROR/AndroidRuntime(4055): FATAL EXCEPTION: main
java.lang.NoClassDefFoundError: android.support.v7.appcompat.R$styleable
at android.support.v7.app.ActionBarActivityDelegate.onCreate(ActionBarActivityDelegate.java:98)
at android.support.v7.app.ActionBarActivityDelegateICS.onCreate(ActionBarActivityDelegateICS.java:58)
at android.support.v7.app.ActionBarActivity.onCreate(ActionBarActivity.java:98)
at com.example.SampleMetrRost.CentralActivity.onCreate(CentralActivity.java:12)
at android.app.Activity.performCreate(Activity.java:4636)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1051)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1924)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1985)
at android.app.ActivityThread.access$600(ActivityThread.java:127)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1151)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4476)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:816)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:583)
at dalvik.system.NativeStart.main(Native Method)
M'aider, s'il vous plaît. Passé toute la journée d'aujourd'hui.
- A couru dans le même problème, consultez stackoverflow.com/a/18916738/183575 pour une simple et propre façon de le résoudre.
- youtube.com/watch?v=MIzgaMiyKoM
Vous devez vous connecter pour publier un commentaire.
Sans Gradle (Cliquez ici pour la solution Gradle)
Créer un projet de bibliothèque.
Importer votre projet de bibliothèque à l'Ide Eclipse projet (cette étape s'applique uniquement si vous avez créé votre bibliothèque dans Eclipse).
Clic droit sur le module et sélectionnez Ouvrir les Paramètres du Module.
Installation des bibliothèques de v7 fichier jar
De configuration du module de la bibliothèque de la v7
Application configuration du module de dépendance de la v7 module bibliothèque
À L'Aide De Gradle
Si vous utilisez Gradle, vous pouvez l'ajouter en tant que
compile
dépendance.Instructions
Assurez-vous que vous avez la
Android Support Repository
SDK paquet installé. Android Studio reconnaît automatiquement ce référentiel pendant le processus de génération (pas sûr de la plaine de l'Ide).Ajouter la dépendance à
{project}/build.gradle
Cliquez sur le
Sync Project with Gradle Files
bouton.MODIFIER: on dirait que ces mêmes instructions sont sur le la documentation sous
Adding libraries with resources -> Using Android Studio
.com.android.support:support-v4:+
dans votre projet de bibliothèque. Cela indiquera à utiliser n'importe quelle version du projet à l'aide qu'il fournit.À L'Aide De Maven
Tout d'abord, vous devez installer android bibliothèques à votre référentiel maven local à l'aide de Maven Android SDK Deployer
Vous pouvez ensuite ajouter de la dépendance à votre pom comme ceci:
C'est ma solution:
Copie&coller $ANDROID_SDK/extras/android/support/v7/appcompat à votre projet RACINE
Ouvrir "Structure de Projet" sur Intellij, cliquez sur "Modules" sur "Paramètres du Projet", puis cliquez sur "appcompat"->"android', assurez-vous que "Module de Bibliothèque" est cochée.
cliquez sur "VOTRE-PROJECT_NAME" sous "appcompat", supprimer "android-support-v4" et "android-support-v7-compat"; assurer la case avant "appcompat" est cochée. Et, cliquez sur "ok" pour fermer la fenêtre "Structure de Projet" dialogue.
retour à la mainwindow, cliquez sur "appcompat"->"libs" en haut à gauche de la zone du projet. Cliquez-droit sur "android-support-v4", sélectionnez menuitem "Ajouter de la bibliothèque", changer "Ajouter un Module" à "Votre projet". Même avec "android-support-v7-compat".
Après avoir fait ci-dessus, l'ide doit être en mesure de bien trouver le android-support-XXXX modules.
Bonne Chance!
Un autre encore la solution la plus simple est de coller ces ligne dans la construction.gradle fichier
Une autre solution pour maven (et d'une meilleure solution, du moins pour moi) est d'utiliser le repository maven inclus dans le local du kit SDK d'android. Pour ce faire, il suffit d'ajouter un nouveau dépôt dans votre pom pointant vers le local SDK android:
Après l'ajout de ce référentiel vous pouvez ajouter le standard de Google dépendance comme ceci:
Comme un Projet de Bibliothèque
Il convient d'ajouter les ressources dans un projet de bibliothèque comme par http://developer.android.com/tools/support-library/setup.html
Vous pouvez ensuite ajouter de la
android-support-v7-appcompat
bibliothèque dans votre espace de travail, puis l'ajouter comme une référence à votre projet d'application.La définition de toutes les ressources de votre projet d'application fonctionnera aussi (mais il y a beaucoup de définitions pour ajouter et vous avez oublié de certains d'entre eux), et il n'est pas l'approche recommandée.
android.support.v7.appcompat
paquet. Sinon, les ressources ne seront pas visibles par android-support-v7-appcompat.jarC'est ma solution, il est très similaire à la précédente:
Où {android.la maison} est le répertoire racine du SDK Android et il utilise systemPath au lieu de référentiel.
Une mise à jour de Austyn Mahoney réponse, configuration 'compiler' est obsolète et a été remplacé par "mise en œuvre" et "api".
Il sera supprimé à la fin de 2018. Pour plus d'informations, voir ici.