Come aggiungere un barattolo in Librerie esterne in Android Studio


Risposte:


320

Una risposta tardiva, anche se ho pensato di dare una risposta approfondita a questa domanda. Questo metodo è adatto per Android Studio 1.0.0 e versioni successive.


PASSI


  1. Per prima cosa cambia la struttura delle cartelle da Android a Project .

inserisci qui la descrizione dell'immagine

  1. Ora cerca la cartella libs all'interno dell'app - crea la cartella.

inserisci qui la descrizione dell'immagine

  1. Dopo aver incollato il file .jar nella cartella libs. Fare clic con il tasto destro sul file jar e alla fine fare clic su Aggiungi come libreria . Questo si occuperà dell'aggiunta di file di compilazione ('libs / library_name.jar') in build.gradle [Non è necessario immetterlo manualmente nel file di build].

inserisci qui la descrizione dell'immagine

Ora puoi iniziare a utilizzare la libreria nel tuo progetto.


3
Non ottengo l'opzione Aggiungi come libreria al passaggio 3 nel mio Android Studio 3.0.1
Shylendra Madda,

3
Sì, ho scoperto che ora, se è già stato aggiunto, quell'opzione non verrà visualizzata.
Shylendra Madda,

Perfetto risolto il mio problema
DIRTY DAVE l'

138

Aggiungi il tuo file jar alla cartella app/libs. Quindi fare clic destro sul file jar e fare clic su "Aggiungi come libreria".

Se non è presente alcuna libscartella, è possibile crearla. Fare clic sulla casella combinata che dice "Android" e cambiarlo in "Progetto"

inserisci qui la descrizione dell'immagine

Da qui, puoi fare clic con il tasto destro del mouse su "app" nella struttura di directory e andare su "Nuovo" => "Directory"


36
Se non riesci a trovare una cartella lib, fai clic sulla casella combinata che dice "android" e scegli "Progetto". (quel pulsante è in cima all'esploratore del progetto)
Gayan Weerakutti,

2
È quindi possibile espandere il progetto per trovare la cartella "libs" o fare clic con il pulsante destro del mouse sul progetto e creare una nuova directory. È quindi possibile spostare il file JAR per la libreria in quella directory utilizzando il file manager del sistema operativo. (Grazie, @reversiblean per avermi iniziato!)
Richard

+1 per il commento di @ reversiblean - la vista predefinita è "File di progetto" non "Progetto" e quella vista non mostra la cartella "app / libs", ma non ti consente nemmeno di crearla.
Jules il

4
Non ottengo l'opzione Aggiungi come libreria in Android Studio 3.0.1
Shylendra Madda il

1
@Thinsky Sì, ho scoperto che ora, se è già stato aggiunto, quell'opzione non verrà visualizzata.
Shylendra Madda,

63

Inserisci il tuo JAR in app / libs e in app / build.gradle aggiungi nella dependenciessezione:

compile fileTree(dir: 'libs', include: ['*.jar'])


posso scegliere un altro / Il mio percorso come "valori \ cartella_m \ myjar.jar" ??? perché sto lavorando sul codice sorgente di Android Studio.
Sanket Prabhu,

Devi solo cambiare il valore di 'dir' (quindi sostituisci 'libs' con tutto ciò di cui hai bisogno).
Gaëtan,

1
la compilazione è obsoleta
Deepak Samuel Rajan,

1
sì, Deepak ha ragione: "compilare" è deprecato ... quindi sostituiscilo con "implementazione" e dovrebbe funzionare bene.
Segna

40

Crea la cartella "libs" nella directory dell'app copia il tuo file jar nella cartella libs fai clic destro sul file jar in Android Studio e aggiungi come libreria ... Quindi apri build.gradle e aggiungi questo:

dependencies {
    implementation files('libs/your jar file.jar')
}

1
Configuration 'compile' is obsolete and has been replaced with 'implementation' and 'api'.
Michael,

20

Passaggio 1: scarica qualsiasi file JAR per il tuo progetto.inserisci qui la descrizione dell'immagine

Passaggio 2: copia il file .jar e passalo nella cartella libs.

inserisci qui la descrizione dell'immagine inserisci qui la descrizione dell'immagine

Passaggio 3: fare clic su File> Struttura del progetto> Seleziona app> Dipendenze

inserisci qui la descrizione dell'immagine

Step 4:

inserisci qui la descrizione dell'immagine

Passaggio 5:

inserisci qui la descrizione dell'immagine

Passaggio 6: Dopo aver fatto clic sul pulsante OK, possiamo vedere le dipendenze aggiungere in questo modo:

inserisci qui la descrizione dell'immagine


13

Esempio con Parse jar ...

Aggiungi vasi alla cartella libs dalla vista Progetto ... crea una cartella lib se non esiste

inserisci qui la descrizione dell'immagine

Copia tutti i barattoli lì ...

Aggiungi libs a gradle .... nel file build.gradle:

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:23.0.0'
    compile 'com.android.support:design:23.0.0'
    compile 'com.android.support:percent:23.0.0'
    compile 'com.parse.bolts:bolts-android:1.+'
    compile fileTree(dir: 'libs', include: 'Parse-*.jar’)
}

Per aggiungere tutti i vasetti della cartella lib ... cambia Parse - *. Jar in * .jar


11

Ecco come aggiungere .jarfile in Android Studio 2.1.3.

  1. Copia il file .jar screenshot della copia del file jar

  2. incollare il file nella cartella Libs e quindi fare clic con il tasto destro sul file .jar e premere Add as library inserisci qui la descrizione dell'immagine

  3. apri build.gradle inserisci qui la descrizione dell'immagine

  4. aggiungi le linee sotto le dipendenze come mostrato nello screenshot inserisci qui la descrizione dell'immagineinserisci qui la descrizione dell'immagine

  5. Ora premi il tasto play e hai finito di aggiungere il file .jar inserisci qui la descrizione dell'immagine


(Almeno con AS 2.3) Puoi saltare i passaggi 3 e 4. AS aggiunge automaticamente il JAR alle tue dipendenze build.gradle.
Wing Poon,

2
salta i passaggi 3 e 4, quindi apri File-> Struttura del progetto-> app-> dipendenze-> fai clic su + -> dipendenze jar e scegli il file jar. il suo lavoro per me
Jhohannes Purba,

3

L'approccio basato sulla GUI sarebbe quello di aggiungere un modulo aggiuntivo nel tuo progetto.

  1. Dal menu File selezionare Struttura del progetto e fare clic sull'icona con il plus verde in alto a sinistra.
  2. Viene visualizzata la finestra di dialogo del nuovo modulo
  3. Dal gruppo di applicazioni del telefono e del tablet selezionare l'opzione "Importa pacchetto JAR o AAR" e fare clic su Avanti.
  4. Seguire i passaggi per creare un nuovo modulo che contiene il file JAR.
  5. Fare clic sulla voce corrispondente al progetto principale e selezionare la scheda Dipendenze.
  6. Aggiungi una dipendenza al modulo che hai creato nel passaggio 4.

Un ultimo consiglio. Assicurati che il file JAR che includi sia compilato al massimo con JDK 1.7 . Molti problemi relativi al messaggio di errore "com.android.dx.cf.iface.ParseException: magia file di classe non valida (cafebabe) o versione (0034.0000)" radice direttamente a questo: 0.


Confermi che questo approccio è migliore dell'approccio "copia-jar-to-libs" come dicono altre risposte?
Eido95,

@ Eido95 Ecco come l'ho fatto nel 2015. Ricordo di aver cercato di includere l'analisi JSON in un'applicazione Android e questo è ciò che ha funzionato.
Thanassis,

Quale approccio mi consigliate che dovrei usare secondo te per una semplice aggiunta JAR esterna?
Eido95,

3

Un modo semplice per aggiungere file Jar Android Studio Passaggi:

  1. Copia e incolla il tuo file jar nella cartella libs del tuo progetto.
  2. Fare clic su File dal menu File -> Struttura del progetto (CTRL + MAIUSC + ALT + S su Windows / Linux, ⌘ +; su Mac OS X).
  3. Seleziona Moduli nel pannello di sinistra -> scheda Dipendenze.
  4. Aggiungi ... → Libreria progetti → Allega vaso.

3

Se qualcuno è alla ricerca di un'altra soluzione senza effettivamente copiare i file jar nella directory del progetto, ad esempio quando si utilizza un jar in più progetti:

Aprire build.gradle e aggiungere

def myJarFolder = 'C:/Path/To/My/Jars'

[...]

dependencies {
    [...]
    compile fileTree(dir: myJarFolder + '/jar/Sub/Folder/1', include: ['*.jar'])
    compile fileTree(dir: myJarFolder + '/jar/Sub/Folder/2', include: ['*.jar'])
    [...]
}

Nota che ovviamente non devi usare la variabile myJarFolder , la trovo comunque utile. Il percorso può anche essere relativo, ad es . ../../Path/To/My/Jars .
Testato con AndroidStudio 3.0

Aggiornamento: per Gradle Plugin> 3.0 utilizzare l' implementazione anziché compilare :

dependencies {
        [...]
        implementation fileTree(dir: myJarFolder + '/jar/Sub/Folder/1', include: ['*.jar'])
        implementation fileTree(dir: myJarFolder + '/jar/Sub/Folder/2', include: ['*.jar'])
        [...]
    }

Sto avendo un problema con questo. Lo sto facendo una libreria e l'app che dipende dalla libreria è in esecuzione in NoClassDefFoundError. Ricevo anche molti errori nel non riuscire a trovare la classe per il desugaring
tricknology

3

In Android Studio versione 3.0 o più ho usato qui sotto come:

  1. Crea librerie nella directory dell'app se non esiste una cartella simile
    • Vai al progetto
    • Vai all'app
    • fai clic su app-> Nuovo-> Directory
    • ha chiamato la cartella libs
    • incolla il vaso nella cartella libs
    • l'immagine sarà simile inserisci qui la descrizione dell'immagine

2.In build.gradle aggiungi linee a soffietto

implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation files('libs/com.ibm.icu_3.4.4.1.jar')

1

Se non vedi l'opzione "Aggiungi come libreria", assicurati di estrarre (decomprimere) il tuo file in modo da avere mail.jare no mail.zip.

Quindi fai clic con il pulsante destro del mouse sul file e vedrai l'opzione "Aggiungi come libreria".


1

Fornisci il percorso del file jar in build.gradle

implementation fileTree(dir: '<DirName>', include: ['*.jar'])

Esempio:

implementation fileTree(dir: 'C:\Downloads', include: ['*.jar'])

Per aggiungere un singolo file jar

implementation files('libs/foo.jar')

Nota: la compilazione è obsoleta in ultimo grado, quindi utilizzare l'implementazione.


0

Il "modo ufficiale" per aggiungere un jar nel tuo progetto Android come libreria esterna è quello di aggiungere il jar nella sezione delle dipendenze {} in build.gradle .

Se hai fatto tutto quanto sopra e nessuna delle precedenti funziona, allora ci sono altre due possibilità:

  1. Se Android Studio o qualche altro IDE non genera errori sottolineati in rosso nell'editor ma viene eseguito per errore nel compilatore Java, CONTROLLA IL TUO JAR . Il tuo vaso potrebbe non avere un Manifest corretto incluso quindi il compilatore non sa cosa può fornire il vaso / non sa il nome del suo pacchetto
  2. Forse la struttura delle cartelle è incasinata. La struttura delle cartelle non corrisponde al nome del pacchetto. package a.b.c;dovrebbe corrispondere alla cartella a> cartella b> cartella c.
  3. Il nome del pacchetto presenta alcuni conflitti. (Fidati di me, questo è successo a me e ci sono volute ore per capirlo.)

Tuttavia, se stai andando con Cordova , ecco alcuni suggerimenti per aggiungere vasetti esterni.

" build-extras.gradle " è il modo migliore per gestire il tuo file gradle.

Ecco i passaggi per gestire le impostazioni extra nel progetto Android basato su Cordova:

  1. Aggiunta del vaso in build-extras.gradle:
    //Other settings go here, e.g.: buildscript { ... }
    ext.postBuildExtras = {
    // you may have some other settings, e.g.: android { ... }
            dependencies {
                    compile files('libs/abc.jar')
            }
    }

( Passaggi più dettagliati qui: estensione del file gradle cordova per includere i servizi di Google )

  1. Nel terminale, esegui:

cordova build android

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.