Android Studio: Add jar, de la bibliothèque?
Je suis en train d'utiliser le nouveau Android Studio, mais je n'arrive pas à le faire fonctionner correctement.
Je suis en utilisant le Gson bibliothèque de sérialiser/désérialiser JSON-objets. Mais la bibliothèque d'une certaine manière n'est pas inclus dans la compilation.
J'avais créé un nouveau projet avec juste un MainActivity.
Copié gson-2.2.3.jar dans le /dossier libs et de l'ajouter en tant que bibliothèque de dépendance(clic droit->Ajouter de la bibliothèque). Cela comprend le pot dans android studio de sorte qu'il peut être référencé à partir de la source des fichiers.
Lorsque j'essaie d'exécuter le projet qu'il ne peut pas compiler j'ai donc ajouté:
compile files('libs/gson-2.2.3.jar')
pour les dépendances dans de .gradle fichier. Après qu'il compile correctement, mais lors de l'exécution de l'application, je reçois un ClassDefNotFoundException
.
Personne ne sait ce que je fais mal?
- Voir : stackoverflow.com/a/6859020/28557
- Bien que cela ne résout pas le problème, ne veulent point que "compiler" a été dépréciée en faveur de la "mise en œuvre".
Vous devez vous connecter pour publier un commentaire.
J'ai été aux prises avec la même chose pour le nombre d'heures, en essayant d'obtenir le Gson pot à travailler pas moins. J'ai finalement craqué il – voici les étapes que j'ai pris:
gson-2.2.4.jar
) dans lelibs
dossierS'assurer que
compile files('libs/gson-2.2.4.jar')
est dans votrebuild.gradle
fichier (oucompile fileTree(dir: 'libs', include: '*.jar')
si vous utilisez plusieurs fichiers jar)Edit : Utiliser
implementation files('libs/gson-2.2.4.jar')
(ouimplementation fileTree(dir: 'libs', include: '*.jar')
) dans Android Studio 3.0+Faire une construction propre (vous pouvez probablement le faire de cette amende dans Android Studio, mais pour en être sûr, je navigue dans un terminal dans le dossier racine de mon application et tapé
gradlew clean
. Je suis sur Mac OS X, la commande peut être différent sur votre systèmeAprès je l'ai fait ci-dessus quatre, il a commencé à bien fonctionner. Je pense que le 'Ajouter que la bibliothèque" l'étape était celle que j'avais manqué, et ça ne fonctionne pas jusqu'à ce que j'ai nettoyé il soit.
[Modifier ajoutée le
build.gradle
étape qui est également nécessaire, comme d'autres l'ont souligné]compile files
dansbuild.gradle
là et ont besoin de nettoyer avec de l'gradlew
.Rebuild Project
à partir d'Android Studio ne semble pas faire le nettoyer correctement.gradlew clean
ne résout pas à elle seule le problème pour moi, j'ai dû aussi faire comme @Ozzie suggéré et ajoutez le .jar pour monbuild.gradle
situé dansMyProject/MyProject-MyProject/build.gradle
. À l'intérieur de ce fichier, le mien ressemble maintenant àdependencies { compile files('libs/android-support-v4.jar') compile files('libs/myextlib.jar')}
Merci!compile fileTree(dir: 'libs', include: '*.jar')
repositories { mavenCentral() }
et de remplacer votrecompile files(...)
ligne aveccompile 'com.google.code.gson:gson:2.2.4'
et gradle va automatiquement télécharger et de gérer le fichier jar pour vous. Cela permet de SCM pour suivre uniquement les fichiers de code source et de ne pas les bibliothèques.build.gradle
: compiler fileTree(dir: 'libs', comprend: ['*.pot'])Voici les instructions pour l'ajout d'un local fichier jar d'une bibliothèque à un module:
Créer un 'libs' dans le dossier de niveau supérieur du répertoire du module (le même répertoire qui contient le 'src' répertoire)
Dans le
build.gradle file
ajouter ce qui suit afin que vos dépendances de clôture:Android Studio devrait déjà avoir l'installation d'un gradlew wrapper. À partir de la ligne de commande, accédez au niveau supérieur de votre projet (le répertoire qui a une
gradlew
fichier).Exécuter
./gradlew assemble
. Ceci devrait compiler le projet avec la bibliothèque. Vous devrez peut-être corriger les erreurs dans votre construction.gradle fichier si nécessaire.Afin de disposer d'Android Studio reconnaître les locaux de fichiers jar que les bibliothèques pour soutien tandis que le codage dans l'IDE, vous avez besoin de prendre quelques mesures:
4.1. Clic droit sur le module dans le panneau de gauche et sélectionnez
Open Library Settings
.4.2. Sur le panneau de gauche de la boîte de dialogue, choisissez
Libraries
.4.3. Cliquez sur le
+
signe au-dessus du panneau deuxième en partant de la gauche ->Java
4.4. Sélectionnez votre local bocal et l'ajouter au projet.
Vous devrez peut-être exécuter le dessus
./gradlew
commande une fois de plusDans le projet clic droit
Suivre les captures d'écran ci-dessous:
1:
2:
3:
Vous verrez ceci:
Dans Android Studio, j'aime utiliser Gradle pour gérer Gson lib.
Ajouter en dessous de la dépendance dans votre construction.gradle fichier.
Tout est OK.
Vous pouvez également voir ce post.
La meilleure façon d'intégrer la troisième partie de la bibliothèque dans Android studio
IIRC, simplement en utilisant "Ajouter que la bibliothèque" n'est pas suffisante pour compiler le projet.
Vérifier Intellij l'aide de sur l'ajout de bibliothèques d'un projet
La partie qui t'intéresse le plus, c'est ceci:
Si la bibliothèque ne s'affiche pas dans la boîte de dialogue, l'ajouter dans les Bibliothèques de paramètres, juste en dessous de Modules.
Vous ne devriez pas besoin d'ajouter
compile files()
, et de plus, la bibliothèque doit être correctement ajouté à votre projet.Toutes ces solutions sont obsolètes. Il est vraiment facile maintenant dans Android Studio:
Fichier > Nouveau Module...
L'écran suivant fait un peu bizarre, comme vous, la sélection de certains widget ou quelque chose, mais le garder
sur la première photo ci-dessous et faites défiler et trouver "l'Importation JAR ou .AAR Package"
Puis prendre
Project Structure
du menu Fichier.Sélectionnezapp
de la fenêtre puis sélectionnezdependencies
,puis appuyez surgreen plus button
,sélectionnezmodule dependency
puis sélectionnez le module que vous avez importé puis appuyez surOK
'compiler des fichiers...' habitude de travailler pour moi, mais pas plus. après beaucoup de douleur, j'ai trouvé que l'utilisation de ce lieu fonctionne:
compile fileTree(dir: 'libs', include: '*.jar')
Je n'ai aucune idée de pourquoi cela fait une différence, mais, au moins la fichue chose est travail maintenant.
Qui a résolu mon problème. Essayez, si quelqu'un veut plus de détails, laissez-moi savoir.
J'ai fait le travail par le simple ajout d'une ligne à construire.gradle:
N'oubliez pas de cliquez sur "Sync" dans le coin supérieur droit.
Im en utilisant Android Studio 1.0.1.
fileTree
ligne n'?J'ai trouvé la Dépendance Gestionnaire de Android Studio est très pratique et puissant pour la gestion de la 3e partie des dépendances (comme gson mentionné ici). Fournir guide étape par étape ce qui a fonctionné pour moi (REMARQUE: Ces étapes sont testés pour Android Studio 1.6 et en avant les versions sur plate-forme Windows).
Étape 1:
Goto "Build > Modifier les Bibliothèques et les Dépendances..." ce serait ouvrir la boîte de dialogue "Structure de Projet"
Étape 2:
Sélectionnez "application", puis sélectionnez "Dépendances" de l'onglet. Puis sélectionnez "Ajouter > 1 Bibliothèque de dépendance"
Étape 3:
"Choisir de Dépendance de Bibliothèque" dialogue serait montré, de préciser "gson" dans la recherche, et appuyez sur le "bouton de recherche"
Étape 4:
Le désiré de dépendance est indiqué dans la liste de recherche, sélectionnez com.google.code.gson:gson:2.7 (c'est la dernière version au moment où j'ai écrit la réponse), appuyez sur OK
Appuyez sur OK sur le "Projet de la Structure de dialogue". Gradle permettrait de mettre à jour vos scripts de génération en conséquence.
Espère que cela aiderait 🙂
Android Studio 2.3.3
Après j'ai fait les trois ci-dessus, il a commencé à bien fonctionner.
Télécharger & Copie de Votre
.jar
fichier danslibs
dossier, puis l'ajout de ces la ligne à construire.gradle:N'oubliez pas de cliquez sur "Synchroniser maintenant"
Vous pouvez le faire avec deux options.
première manière simple.
Copiez le .le fichier jar dans le presse-papiers, puis l'ajouter au dossier libs. Pour voir le dossier libs dans le projet, choisir le projet de zone de liste déroulante au-dessus de la dossiers.
puis cliquez droit sur l' .jar fichier et cliquez sur ajouter comme une bibliothèque, puis choisissez un module, puis ok.
Vous pouvez voir le .le fichier jar dans le build.gradle fichier dans les dépendances du bloc.
Second cas: On peut ajouter un .le fichier jar à un module par l'importation .fichier jar un .jar module puis ajouter ce module à n'importe quel module que nous voulons.
module d'import ---> choisissez votre .jar fichier --> que l'importation en tant que .jar --

Puis CTRL+ALT+MAJ+S --> projet sturure -->choisir le module que vous souhaitez ato ajouter un jar -->Dependencendies --> Module de Dépendance. construire.gradle du module sera mis à jour automatiquement.

Nous avons fait ci-dessus 3 étapes et son travail de charme pour moi.
(Je suis en utilisant Android Studio 2.1.2)
Étape 1
compile 'com.squareup.okhttp3:okhttp:3.3.1'
) dans le script de build gradle sous construire.gradle(Module:app).Étape 2:
Clic droit sur application dossier -> New -> Module
Étape 3: Cliquez sur Importation JAR/.AAR Paquet Puis parcourez votre colis. à titre d'exemple: OkHttp.jar
Mettre le
.jar
fichiers danslibs
dossier du projet Android.Puis ajoutez cette ligne de code dans l'application de gradle fichier:
Pour Android plugin gradle 3.0 et versions ultérieures, il est préférable d'utiliser ce lieu:
Contrairement à Eclipse nous n'avons pas besoin de télécharger un bocal et le mettre dans /dossier libs. Gradle s'occupe de ces choses, nous avons seulement besoin d'ajouter Gradle dépendances, Gradle télécharge et met en gradle cache.
Nous avons besoin d'ajouter des dépendances:
dépendances {la mise en œuvre", com.google.code.gson:gson:2.2.4'}
thats it
Cependant, on peut également télécharger jar & ajouter que, de la bibliothèque, mais la meilleure pratique consiste à ajouter Gradle dépendances.
Avec Android Studio 3+:
Vous devez simplement être en mesure de simplement copier le fichier jar du dossier libs droit, en vertu de l'application du dossier.
... myproject\app\libs\myfile.jar
Puis sélectionnez les Fichiers de Projet à partir de la liste déroulante sur les Projets de fenêtre, clic droit sur le projet, sélectionnez Synchroniser pour voir le fichier dans les Fichiers de Projet. Il va automatiquement ajouter les dépendances dans le gradle fichier (Module:app).
Voici une autre solution:
Aller vers les Fichiers de Projet (vue de sélectionner les dossiers de Projet à partir de la liste déroulante).
Sélectionnez Nouveau... Répertoire, créez un dossier nommé libs droit en vertu de l'application.
Ouvrir l'Explorateur de Fichiers, copier et coller votre fichier jar dans le dossier libs.
Dans Android Studio, cliquez-droit sur le fichier jar, et sélectionnez Ajouter une Bibliothèque... dans le menu contextuel.
Vous devriez voir le fichier répertoriés dans la liste de dépendances dans le gradle fichier:
Ouvrir votre fichier java, et d'ajouter l'instruction import là:
Créer un dossier libs. Ajouter votre .fichier jar. Clic droit sur ce lien et vous trouverez ajouter le pot, car la dépendance. Cliquez sur elle. Son tout ce que vous devez faire.
Vous pouvez trouver les dépendances ajouté à votre construction.gradle fichier.
1) créer un " your_libs dossier à l'intérieur du Projet/app/dossier src.
2) Copiez votre fichier jar dans cette " your_libs dossier
3) Dans Android Studio, aller dans Fichier -> Structure de Projet -> Dépendances -> Add -> Fichier de Dépendance et naviguez jusqu'à votre fichier jar, qui devrait être sous 'src/your_libs'
3) Sélectionnez votre fichier jar et cliquez sur 'Ok'
et ensuite vous pouvez voir sur votre construction.gradle comme ceci : compiler
les fichiers('src/your_libs/your.jar')
Dans android Studio 1.1.0 .
J'ai résolu cette question par les étapes suivantes:
1: Mettre le fichier jar dans le répertoire libs. (dans le Finder)
2: Ouvrez les paramètres du module , allez dans les Dépendances ,au coin en bas à gauche il y a un bouton "plus". Cliquez sur le bouton plus, puis choisissez "Fichier de Dépendance" .Vous pouvez voir ici, vous fichier jar. Sélectionnez-la et c'est résolu.
Étape 1 : Maintenant sous votre
app folder
vous devriez voirlibs
, si vous ne le voyez pas, puis créer .Étape 2 :
Drag & Drop the .jar file here
, vous pouvez peut-être obtenir une invite"This file does not belong to the project"
, il suffit de cliquerOK
Bouton .Étape 3 : Maintenant, vous devriez voir le fichier jar sous dossier libs, clic droit sur le fichier jar et sélectionnez
"Add as library", Click OK for prompt "Create Library"
Étape 4 : Maintenant, ce pot a été ajouté.
J'ai lu toutes les réponses ici et ils semblent tous pour couvrir les anciennes versions d'Android Studio!
Avec un projet créé avec Android Studio 2.2.3 j'ai juste besoin de créer un
libs
répertoire sousapp
et place mon pot là.Je l'ai fait avec mon gestionnaire de fichier, pas besoin de cliquer ou de modifier quoi que ce soit dans Android Studio.
Pourquoi ça marche? Ouvrir Construire /Modifier des Bibliothèques et des Dépendances et vous verrez:
Sur Mac OS X:
Add jar, de la bibliothèque (faites glisser le pot à libs, à droite, cliquez sur ajouter lib)
Ajouter instruction de compilation de
build.grade
Installer
gradle v1.6
(utiliser homebrew)gradle propre (reconstruire android ne fonctionne pas)
Cette triés moi.
Comme beaucoup avant de relever vous ne devez ajouter
de votre construction.gradle fichier.
Toutefois, j'ai un projet dans Android Studio qui a été migré à partir d'Eclipse et dans ce cas, le "libs" dossier nommé "lib" donc, pour moi, enlever le "s" a résolu le problème.
libs
dossier au niveau deapp
.jars
dans ce projet.libs
dossier,add library
J'ai observé CTRL + ALT + MAJ + S --> structure de projet --> app-module - >Dépendances" ont déjà une entrée comme
(dir: 'libs', include: '*.jar')
souscompile-option
, d'abord. Et après l'ajout de la jarre est comme pour les étapes indiquées ci-dessus, lebuild.gradle
obtenu les inscriptions pour les nouveaux jar, de lui-même.Dans Android Studio 2.1 j'ai suivi le de cette façon,
Goto app -> src-> main -> actifs dossier (S'il n'existe pas le créer) -> mettre vos fichiers JAR
Dans votre construction.gradle ajouter la dépendance de ce genre,
Synchroniser maintenant.
Maintenant, votre JAR fichiers prêts à l'emploi.
Pour les nouveaux Android 1.0.2 la suite est déjà là dans votre construction.gradle fichier
Ajouter la bibliothèque bocal à votre dossier libs -> cliquez-droit sur la bibliothèque -> cliquez sur ajouter une bibliothèque -> il vous demande pour le projet afin de l'ajouter pour -> sélectionnez votre projet-> cliquez sur ok
La ligne suivante est ajoutée automatiquement à construire.gradle
Qu'il a fait pour moi. rien de plus n'était nécessaire. j'ai montré ce pour android aquery un autre tiers de la bibliothèque pour android.
Ma réponse est essentiellement à réunir quelques-uns de la droite, mais incomplète réponses fournies ci-dessus.
Ajouter les éléments suivants:
Cela permettra la prise en charge de deux différentes manières d'ajouter des dépendances. Le
compile fileTree(dir: 'libs', include: ['*.jar'])
(comme @Binod mentionné) indique au compilateur de regarder dans le dossier libs pour n'IMPORTE quel bocal. C'est une bonne pratique pour créer un dossier "libs" qui contiendra le pot paquets que notre application a besoin d'utiliser.Mais cela permettra également de support de Maven dépendance. La compilation
'com.google.code.gson:gson:2.3'
(comme mentionné par @saneryee) c'est un autre recommandé d'ajouter des dépendances qui sont dans un centre de dépôt distant et pas dans notre /libs "référentiel local". Il est dit en gros à gradle regarder pour cette version de ce paquet et il dit au compilateur de le considérer lors de la compilation du projet (de l'avoir dans le classpath)PS: j'utilise les deux
compile fileTree(dir: 'libs', include: '*.jar')
fonctionne très bien mais pascompile files(...)
avons testé avec Studio Beta 0.8.1Ce FAIRE :
Créer des libs dossier sous le dossier de l'application.
Ajouter .les fichiers jar de dossier libs.
Ajoutez ensuite .les fichiers jar à l'application de la construire.gradle de dépendance.
Enfin Sync projet avec Gradle fichiers.
Dans mon cas l'ajout d'une bibliothèque oubliée certaines dépendances, mais malheureusement, Android Studio (0.8.14) a gardé cela comme un secret.
Il n'y avait pas besoin de configurer manuellement n'importe quoi! Je viens d'ajouter les bibliothèques manquantes et utilisé par défaut de la dépendance de configuration dans le application
build.gradle
fichier, comme ceciJe ne sais pas pourquoi, mais mon Android Studio 0.8.14 devient fou quand j'essaie de mettre en œuvre ces solutions à l'aide de Gradle. J'avoue ma méconnaissance de ce grand outil de construction, mais ce n'Studio mutiler pour mon projet? J'ai réussi à le faire fonctionner de cette façon: mettre android-support-v13.jar dans 'libs' répertoire, puis F4 sur mon projet et ajouter un Fichier de dépendance où je l'ai signalé android-support-v13.jar.