Jak dodać słoik w bibliotekach zewnętrznych w Android Studio


Odpowiedzi:


320

Późna odpowiedź, choć myślałem o udzieleniu dogłębnej odpowiedzi na to pytanie. Ta metoda jest odpowiednia dla Androida Studio 1.0.0 i nowszych wersji.


KROKI


  1. Najpierw przełącz strukturę folderów z Androida na Project .

wprowadź opis zdjęcia tutaj

  1. Teraz wyszukaj folder libs wewnątrz aplikacji - folder kompilacji.

wprowadź opis zdjęcia tutaj

  1. Po wklejeniu pliku .jar do folderu libs. Kliknij prawym przyciskiem myszy plik jar, a na koniec kliknij Dodaj jako bibliotekę . To zajmie się dodaniem plików kompilacji („libs / nazwa_biblioteki.jar”) w build.gradle [Nie musisz ręcznie wpisywać tego w pliku kompilacji].

wprowadź opis zdjęcia tutaj

Teraz możesz zacząć korzystać z biblioteki w swoim projekcie.


3
Nie dostaję opcji Dodaj jako bibliotekę w kroku 3 w moim Android Studio 3.0.1
Shylendra Madda

3
Tak, znalazłem, że teraz, jeśli jest już dodany, ta opcja nie będzie wyświetlana.
Shylendra Madda

Idealnie naprawiłem mój problem
DIRTY DAVE

138

Dodaj plik jar do folderu app/libs. Następnie kliknij prawym przyciskiem myszy plik jar i kliknij „dodaj jako bibliotekę”.

Jeśli nie ma libsfolderu, możesz go utworzyć. Kliknij pole kombi z napisem „Android” i zmień je na „Projekt”

wprowadź opis zdjęcia tutaj

Stąd możesz kliknąć prawym przyciskiem myszy na „aplikacje” w drzewie katalogów i przejść do „Nowy” => „Katalog”


36
Jeśli nie możesz znaleźć folderu lib, po prostu kliknij combobox z napisem „android” i wybierz „Projekt”. (ten przycisk znajduje się na górze eksploratora projektu)
Gayan Weerakutti

2
Następnie możesz rozwinąć swój projekt, aby znaleźć folder „libs” lub kliknąć prawym przyciskiem myszy swój projekt i utworzyć nowy katalog. Następnie możesz przenieść plik JAR biblioteki do tego katalogu za pomocą menedżera plików systemu operacyjnego. (Dzięki, @reversiblean za rozpoczęcie pracy!)
Richard

+1 za komentarz @ reversiblean - domyślny widok to „Pliki projektu”, a nie „Projekt”, i ten widok nie pokazuje folderu „app / libs”, ale nie pozwala również na utworzenie go.
Jules

4
Nie dostaję opcji Dodaj jako bibliotekę w Android Studio 3.0.1
Shylendra Madda

1
@ Thinsky Tak, znalazłem, że teraz, jeśli jest już dodany, ta opcja nie będzie wyświetlana.
Shylendra Madda

63

Umieść swój plik JAR w app / libs, a w app / build.gradle dodaj w dependenciessekcji:

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


czy mogę wybrać inną / moją własną ścieżkę, np. „wartości \ mój_folder \ mójjar.jar” ??? ponieważ pracuję nad kodem źródłowym Android Studio.
Sanket Prabhu,

Musisz tylko zmienić wartość „dir” (więc zastąp „libs” tym, czego potrzebujesz).
Gaëtan

1
kompilacja jest przestarzała
Deepak Samuel Rajan

1
tak, Deepak ma rację - „kompilacja” jest przestarzała ... więc po prostu zamień ją na „implementacja” i powinna działać dobrze.
Mark

40

Utwórz folder „libs” w katalogu aplikacji skopiuj plik jar do folderu libs Kliknij prawym przyciskiem myszy plik jar w Android Studio i Dodaj jako bibliotekę ... Następnie otwórz build.gradle i dodaj to:

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

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

20

Krok 1: Pobierz dowolny plik JAR dla swojego projektu.wprowadź opis zdjęcia tutaj

Krok 2: Skopiuj plik .jar i przeszłość do folderu libs.

wprowadź opis zdjęcia tutaj wprowadź opis zdjęcia tutaj

Krok 3: Kliknij Plik> Struktura projektu> Wybierz aplikację> Zależności

wprowadź opis zdjęcia tutaj

Krok 4:

wprowadź opis zdjęcia tutaj

Krok 5:

wprowadź opis zdjęcia tutaj

Krok 6: Po kliknięciu przycisku OK możemy zobaczyć dodawanie zależności w następujący sposób:

wprowadź opis zdjęcia tutaj


13

Przykład z parsowaniem słoika ...

Dodaj słoiki do folderu libs z widoku projektu… utwórz folder lib, jeśli nie istnieje

wprowadź opis zdjęcia tutaj

Skopiuj wszystkie słoiki tam ...

Dodaj biblioteki lib do gradle .... w pliku 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’)
}

Aby dodać wszystkie słoiki folderu lib ... zmień Parse - *. Jar na * .jar


11

W ten sposób możesz dodać .jarplik w Android Studio 2.1.3.

  1. Skopiuj plik .jar zrzut ekranu kopiowania pliku jar

  2. wklej plik do folderu Libs, a następnie kliknij prawym przyciskiem myszy plik .jar i naciśnij Add as library wprowadź opis zdjęcia tutaj

  3. otwórz build.gradle wprowadź opis zdjęcia tutaj

  4. dodaj linie w zależnościach, jak pokazano na zrzucie ekranu wprowadź opis zdjęcia tutajwprowadź opis zdjęcia tutaj

  5. Teraz naciśnij przycisk odtwarzania i gotowe. Dodawanie pliku .jar wprowadź opis zdjęcia tutaj


(Przynajmniej z AS 2.3) Możesz pominąć Kroki 3 i 4. AS automatycznie dodaje JAR do twoich zależności build.gradle.
Wing Poon,

2
pomiń kroki 3 i 4, a następnie otwórz Plik-> Struktura projektu-> aplikacja-> zależności-> kliknij + -> zależności jar i wybierz plik jar. jego praca dla mnie
Jhohannes Purba

3

Podejście oparte na GUI polegałoby na dodaniu dodatkowego modułu do projektu.

  1. Z menu Plik wybierz Struktura projektu i kliknij zieloną ikonę plus w lewym górnym rogu.
  2. Pojawi się nowe okno dialogowe modułu
  3. Z grupy aplikacji na telefony i tablety wybierz opcję „Importuj pakiet JAR lub AAR” i kliknij przycisk Dalej.
  4. Postępuj zgodnie z instrukcjami, aby utworzyć nowy moduł zawierający plik JAR.
  5. Kliknij pozycję odpowiadającą Twojemu głównemu projektowi i wybierz kartę zależności.
  6. Dodaj zależność do modułu utworzonego w kroku 4.

Ostatnia rada. Upewnij się, że dołączony plik JAR jest zbudowany co najwyżej z JDK 1.7 . Wiele problemów związanych z komunikatem o błędzie „com.android.dx.cf.iface.ParseException: magia pliku złej klasy (cafebabe) lub wersja (0034.0000)” bezpośrednio do tego: 0.


Czy potwierdzasz, że to podejście jest lepsze niż podejście do folderów „kopiuj słoik do libs”, jak mówią inne odpowiedzi?
Eido95

@ Eido95 Tak to zrobiłem w 2015 roku. Pamiętam, jak próbowałem włączyć parsowanie JSON w aplikacji na Androida i właśnie to działało.
thanassis

Które podejście polecasz powinienem zastosować według Ciebie do prostego zewnętrznego dodawania JAR?
Eido95

3

Prosty sposób na dodanie pliku jar Kroki Android Studio:

  1. Skopiuj i wklej plik jar do folderu libs swojego projektu.
  2. Kliknij polecenie Plik z menu Plik -> Struktura projektu (CTRL + SHIFT + ALT + S w systemie Windows / Linux, ⌘ +; w systemie Mac OS X).
  3. Wybierz Moduły na lewym panelu -> zakładka Zależności.
  4. Dodaj ... → Biblioteka projektu → Dołącz słoik.

3

Jeśli ktoś szuka innego rozwiązania bez faktycznego kopiowania plików jar do katalogu projektu, np. Podczas używania jar w wielu projektach:

Otwórz build.gradle i dodaj

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'])
    [...]
}

Zauważ, że oczywiście nie musisz używać zmiennej myJarFolder , ale uważam ją za przydatną. Ścieżka może być również względna, np . ../../Path/To/My/Jars .
Testowane z AndroidStudio 3.0

Aktualizacja: w przypadku wtyczki Gradle> 3.0 użyj implementacji zamiast kompilacji :

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

Mam z tym problem. Robię to bibliotekę, a aplikacja zależna od biblioteki działa w NoClassDefFoundError. Dostaję też wiele błędów, ponieważ nie mogę znaleźć klasy do usuwania
tricknology

3

W Android Studio w wersji 3.0 lub nowszej zastosowałem poniżej:

  1. Utwórz biblioteki lib do katalogu aplikacji, jeśli nie istnieje folder taki jak
    • Idź do projektu
    • Przejść do aplikacji
    • kliknij aplikacje-> Nowy-> Katalog
    • nazwał folder libs
    • wklej słoik do folderu libs
    • obraz będzie wyglądał wprowadź opis zdjęcia tutaj

2. W build.gradle dodaj poniżej linie

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

1

Jeśli dont zobaczyć opcję „Dodaj Library”, upewnij się wyodrębnić (unzip) plik tak, że masz mail.jari nie mail.zip.

Następnie kliknij plik prawym przyciskiem myszy i zobaczysz opcję „Dodaj jako bibliotekę”.


1

Podaj lokalizację pliku jar w build.gradle

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

Przykład:

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

Aby dodać pojedynczy plik jar

implementation files('libs/foo.jar')

Uwaga: kompilacja jest przestarzała w najnowszej wersji, dlatego zamiast niej użyj implementacji.


0

„Oficjalnym sposobem” dodania słoika do projektu Android jako biblioteki zewnętrznej jest dodanie słoika w sekcji zależności {} w build.gradle .

Jeśli wykonałeś wszystkie powyższe czynności i żadna z powyższych nie działa, istnieją dwie inne możliwości:

  1. Jeśli Android Studio lub inne IDE nie wyświetla czerwonych podkreślonych błędów w edytorze, ale działa błędnie w kompilatorze Java, SPRAWDŹ SWOJE JAR . Twój słoik może nie zawierać właściwego Manifestu, dlatego kompilator nie wie, co ten słoik może dostarczyć / nie wie, jak brzmi jego nazwa
  2. Może jego struktura folderów jest popsuta. Struktura folderów nie zgadza się z nazwą pakietu. package a.b.c;powinien być zgodny z folderem a> folder b> folder c.
  3. Nazwa pakietu ma pewien konflikt. (Zaufaj mi, to mi się przydarzyło i zajęło to kilka godzin).

Jeśli jednak wybierasz się z Cordova , oto kilka wskazówek na temat dodawania zewnętrznych słoików.

build-extras.gradle ” to lepszy sposób na zarządzanie plikiem oceny.

Oto kroki, aby zarządzać dodatkowymi ustawieniami w projekcie Android opartym na Cordova:

  1. Dodanie słoika do 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')
            }
    }

(Bardziej szczegółowe kroki tutaj: rozszerzenie pliku stopni Cordova o usługi Google )

  1. W terminalu wykonaj:

cordova build android

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.