Android Studio: dodać słoik jako bibliotekę?


1026

Próbuję użyć nowego Androida Studio, ale wydaje mi się, że nie działa poprawnie.

Korzystam z biblioteki Gson do serializacji / deserializacji obiektów JSON. Ale biblioteka jakoś nie została uwzględniona w kompilacji.

Stworzyłem nowy projekt z funkcją MainActivity . Skopiowałem gson-2.2.3.jar do folderu / libs i dodałem go jako zależność od biblioteki (prawy przycisk myszy-> Dodaj jako bibliotekę). Obejmuje słoik w Android Studio, więc można się do niego odwoływać z plików źródłowych.

Kiedy próbuję uruchomić projekt, nie można go skompilować, więc dodałem:

compile files('libs/gson-2.2.3.jar')

do zależności w pliku de .gradle. Następnie kompiluje się poprawnie, ale po uruchomieniu aplikacji otrzymuję ClassDefNotFoundException.

Czy ktoś wie, co robię źle?



1
Chociaż to nie rozwiązuje problemu, chcę tylko wskazać, że „kompilacja” była przestarzała na rzecz „implementacji”.
— Amir Rezazadeh

Odpowiedzi:


1534

Walczyłem z tym samym od wielu godzin, próbując doprowadzić słoik Gson do działania. W końcu go złamałem - oto kroki, które podjąłem:

  1. Umieść słoik Gson (w moim przypadku gson-2.2.4.jar) w libsfolderze
  2. Kliknij go prawym przyciskiem myszy i kliknij „Dodaj jako bibliotekę”
  3. Upewnij się, że compile files('libs/gson-2.2.4.jar')jest w twoim build.gradlepliku (lub compile fileTree(dir: 'libs', include: '*.jar')jeśli używasz wielu plików jar)

    Edycja: Użyj implementation files('libs/gson-2.2.4.jar')(lub implementation fileTree(dir: 'libs', include: '*.jar')) w Android Studio 3.0+

  4. Wykonaj czystą kompilację (prawdopodobnie możesz to zrobić dobrze w Android Studio, ale aby upewnić się, że nawigowałem w terminalu do folderu głównego mojej aplikacji i gradlew cleanpisałem. Jestem w systemie Mac OS X, polecenie może być inne w twoim systemie

Po wykonaniu powyższych czterech czynności zaczęło działać dobrze. Myślę, że krok „Dodaj jako bibliotekę” był tym, za którym wcześniej tęskniłem i nie zadziałał, dopóki go nie wyczyściłem.

[Edytuj - dodano build.gradlekrok, który jest również konieczny, jak zauważyli inni]


6
gradlew clean również mi pomógł. Wielkie dzięki!
— František Žiačik

171
Jeśli nie chcesz jawnie dodawać wiersza dla każdego pliku jar: compile fileTree(dir: 'libs', include: '*.jar')
— J c

65
Poleciłbym skorzystać z zarządzania przejściowymi zależnościami gradle i pobrać gson z mavenCentral () (jeśli wymaganie połączenia internetowego jest dopuszczalne. Wystarczy dodać repositories { mavenCentral() }i zastąpić compile files(...)linię, compile 'com.google.code.gson:gson:2.2.4'a gradle automatycznie pobierze plik jar i zarządza nim. Pozwala to SCM na śledź tylko pliki kodu źródłowego, a nie biblioteki
— Joe

38
Nie dostaję opcji Dodaj jako bibliotekę w kroku 2.
— Yster

6
W Android Studio 1.0.2 kroki 2 i 3 nie są potrzebne, ponieważ ten wiersz jest już ustawiony domyślnie build.gradle: compile fileTree (reż: 'libs', include: ['* .jar'])
— Brian Marick

268

Oto instrukcje dodawania lokalnego pliku jar jako biblioteki do modułu:

  1. Utwórz folder „libs” na najwyższym poziomie katalogu modułu (ten sam katalog, który zawiera katalog „src”)

  2. W build.gradle filedodatku następujących tak, że zamknięcie ma zależności:

    dependencies {
        // ... other dependencies
        compile files('libs/<your jar's name here>')
    }
  3. Android Studio powinien już mieć skonfigurowane opakowanie gradlew. Z wiersza polecenia przejdź do najwyższego poziomu projektu (katalogu, w którym znajduje się gradlewplik).

    Uruchom ./gradlew assemble. To powinno skompilować projekt z biblioteką. W razie potrzeby może być konieczne naprawienie błędów w pliku build.gradle.

  4. Aby Android Studio rozpoznał lokalne pliki jar jako biblioteki do obsługi podczas kodowania w IDE, musisz wykonać kilka dodatkowych kroków:

    4.1 Kliknij moduł prawym przyciskiem myszy i wybierz Open Library Settings.

    4.2 W lewym panelu okna dialogowego wybierz Libraries.

    4.3 Kliknij +znak nad panelem drugi od lewej ->Java

    Menu

    4.4 Wybierz lokalny słoik i dodaj go do projektu.

  5. Może być konieczne ponowne uruchomienie powyższego ./gradlewpolecenia


To zadziałało dla mnie. Mam system Android Studio w wersji 1.2, kompilację 141.1890965, na Ubuntu. Dlaczego mówisz „od Android Studio 2.5”? Czy to inna wersja na Windows / Mac? (1a) Znalezienie tego było trudne. Pole kombi znajduje się w lewym górnym rogu obszaru struktury projektu. Musisz wybrać „Projekt” zamiast „Android” i rozwinąć „aplikację”. (1b) Nie pojawiła się opcja „dodaj”, ale „Wklej” zadziałało. (2) Miałem wiersz „compile fileTree (reż: 'libs', include: ['* .jar'])”, ale nadal musiałem dodać twoją jednoznaczną linię. (4, 5) niepotrzebne raz (3) wykonane pomyślnie. Dzięki!
— Phil Freihofner

„lewy panel”? Masz na myśli panel projektu? Może być gdziekolwiek ... W Android Studio 2.3.3 nie mogę znaleźć ustawień biblioteki, ale dodanie słoika do zależności w ustawieniach modułu wydaje się być takie samo ...
— Niesamowity

dla komputerów Mac, jeśli nie masz stopnia: $ brew zainstaluj gradle, jeśli otrzymasz „./gradlew: Odmowa zezwolenia”, musisz uruchomić $ chmod 755 gradlew Następnie możesz uruchomić $ ./gradlew asemble
— Azkario Rizky

110

W projekcie kliknij prawym przyciskiem myszy

-> new -> module
-> import jar/AAR package
-> import select the jar file to import
-> click ok -> done

Wykonaj poniższe zrzuty ekranu:

1:

Krok 1

2:

wprowadź opis zdjęcia tutaj

3:

wprowadź opis zdjęcia tutaj

Zobaczysz to:

wprowadź opis zdjęcia tutaj


@CamConnor Też tak myślę .. Inne odpowiedzi są nieaktualne
— Ganesh Pandey

To jest odpowiedź
— Alessandro

4
Ale nie jest rozpoznawany jako bibliotekaray. Na przykład edytor andriod studio: spróbuj zaimportować pakiet do importowanego słoika, nie rozpoznany.
— Dave

Nie można znaleźć sposobu usunięcia zaimportowanego modułu w ten sposób.
— Dave

Dlaczego mam korzystać z tej metody dodawania zewnętrznego słoika, a nie innych odpowiedzi metody folderu „kopiuj słoik do libs”?
— Eido95

48

W Androidzie Stuido lubię używać Gradle do zarządzania biblioteką Gson.

Dodaj poniżej zależności w pliku build.gradle.

repositories {mavenCentral()}

dependencies {compile 'com.google.code.gson:gson:2.2.4'}

Wszystko w porządku.

Możesz także zobaczyć ten post. Najlepszy sposób na zintegrowanie biblioteki innej firmy w Android Studio


Ta metoda jest najlepsza, ponieważ używa maven.
— Gary Drocella

1
Pamiętaj tylko, aby zaktualizować numer wersji do najnowszej :) Na razie jest to wersja 2.3.1, ale sprawdź link
— Kitalda

47

IIRC, samo użycie „Dodaj jako bibliotekę” nie wystarczy, aby skompilowało się z projektem.

Sprawdź pomoc firmy Intellij na temat dodawania bibliotek do projektu

To, co powinno Cię najbardziej zainteresować, to:

(W File > Project Structure) Otwórz ustawienia modułu i wybierz kartę Zależności.

Na karcie Zależności kliknij dodaj i wybierz Biblioteka.

W oknie dialogowym Wybierz biblioteki wybierz jedną lub więcej bibliotek i kliknij Dodaj wybrane.

Jeśli biblioteka nie pojawia się w oknie dialogowym, dodaj ją w ustawieniach bibliotek, bezpośrednio pod modułami.

Nie trzeba compile files()już dodawać , a biblioteka powinna zostać poprawnie dodana do projektu.


Dodaj jako bibliotekę już dodaje słoik w ten sam sposób. Myślę więc, że wynik jest taki sam. Spróbuję później.
— Ozzie

Dodaj, ponieważ biblioteka robi to z powodzeniem - Jestem na tej samej łodzi co ty, Ozzie - DOKŁADNIE ten sam problem.
— Jonah H.,

W porządku, pomyślałem, że Dodaj jako bibliotekę dodało ją tylko do listy bibliotek i nie dodałem jej ze względu na zależności modułów.
— Jukurrpa

Kiedy spróbowałem, zauważyłem, że dodało linie kompilacji files () do mojego pliku build.gradle, ale wydawało się, że używa bezwzględnych ścieżek do bibliotek (/libs/foo.jar). Zmieniam je na ścieżki względne (libs / foo.jar), co rozwiązało problem.
— Matt Holgate

40

Wszystkie te rozwiązania są przestarzałe. Teraz w Android Studio jest to naprawdę łatwe:

Plik> Nowy moduł ...

Następny ekran wygląda dziwnie, jakbyś wybierał jakiś widżet lub coś, ale trzymaj go na pierwszym obrazku, a poniżej przewiń i znajdź „Importuj plik JAR lub .AAR”

Następnie weź Project Structurez menu Plik. Wybierz appw otwartym oknie, a następnie wybierz dependencies, a następnie naciśnij green plus button, wybierz, module dependencya następnie wybierz moduł zaimportowany, a następnie naciśnijOK


Myślę, że używanie maven byłoby nadal lepszym rozwiązaniem, szczególnie w przypadku dużych projektów, tzn. Zapewnianych przez saneryee.
— Gary Drocella

2
Nawet to wydaje się być przestarzałe. Wystarczy umieścić plik .jar w katalogu „libs”, a zostanie on automatycznie skompilowany do twojego projektu. W Android Studio 1.4 jest już domyślna konfiguracja reguł obejmująca wszystkie pliki * .jar z katalogu „libs”.
— Daniele Testa,

35

Proste kroki, aby dodać bibliotekę zewnętrzną w Android Studio

  1. Jeśli korzystasz z widoku Android w Eksploratorze projektów, zmień go na Widok projektu, jak poniżej

wprowadź opis zdjęcia tutaj

  1. Kliknij prawym przyciskiem myszy żądany moduł, do którego chcesz dodać bibliotekę zewnętrzną, a następnie wybierz Nowy> Directroy i nazwij go jako „ libs ”
  2. Teraz skopiuj plik blah_blah.jar do folderu „ libs ”
  3. Kliknij prawym przyciskiem myszy plik blah_blah.jar, a następnie wybierz opcję „ Dodaj jako bibliotekę .. ”. Spowoduje to automatyczne dodanie i wpisanie do pliku build.gradle jako plików kompilacji („libs / blah_blah.jar”) i synchronizację stopnia. I gotowe

Uwaga: Jeśli korzystasz z bibliotek stron trzecich, lepiej jest użyć zależności, w których skrypt Gradle automatycznie pobiera plik JAR i plik JAR zależności podczas uruchamiania skryptu gradle.

Przykład: kompiluj „com.google.android.gms: play-services-ads: 9.4.0”

Przeczytaj więcej o zarządzaniu stopniem zależności


34

„kompiluj pliki ...” działało dla mnie, ale już nie. po dużym bólu stwierdziłem, że zamiast tego działa to:

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

Nie mam pojęcia, dlaczego to miało znaczenie, ale przynajmniej ta cholerna rzecz działa teraz.


1
Działa to dla mnie, jednak ostatnio okazało się, że AS nie zbiera nowych / zaktualizowanych słoików, dopóki nie przeprowadzisz synchronizacji stopniowej.
— scottyab

Pamiętaj tylko, że „kompilacja” była przestarzała na rzecz „implementacji”.
— Amir Rezazadeh

17
  1. Pobierz plik biblioteki ze strony internetowej
  2. Kopiuj z Eksploruj Windows
  3. Wklej do folderu lib z Eksploratora projektu
  4. Ctrl+ Alt+ Shift+ Sotwórz strukturę projektu
  5. Wybierz kartę Zależności, dodaj plik za pomocą +
  6. Pasek narzędzi Zsynchronizuj projekt z plikiem stopni za pomocą przycisku

To rozwiązało mój problem. Spróbuj, jeśli ktoś chce więcej szczegółów, daj mi znać.


17

Zrobiłem to, dodając tylko jedną linię do build.gradle:

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar']) ----> AS creates this
    implementation 'com.google.code.gson:gson:2.3.1'   ----------> I added this one
}

Nie zapomnij kliknąć Sync noww prawym górnym rogu.

Używam Androida Studio 1.0.1.


czy rozwinąłbyś się na temat tego, co fileTreerobi linia?
— Thufir

13

Uważam, że Dependency Manager z Android Studio jest dość przydatny i potężny do zarządzania zależnościami innych firm (jak wspomniany tutaj gson). Udostępnienie przewodnika krok po kroku, który działał dla mnie (UWAGA: te kroki są testowane dla Androida Studio 1.6 i nowszych wersji na platformie Windows).

Krok 1: Idź do „Kompiluj> Edytuj biblioteki i zależności ...” otworzy się okno dialogowe „Struktura projektu”

wprowadź opis zdjęcia tutaj

Krok 2: Wybierz „aplikację”, a następnie zakładkę „Zależności”. Następnie wybierz „Dodaj> 1 zależność biblioteki”

wprowadź opis zdjęcia tutaj

Krok 3: Zostanie wyświetlone okno dialogowe „Wybierz zależność biblioteki”, określ „gson” w wyszukiwaniu i naciśnij przycisk „Szukaj”

wprowadź opis zdjęcia tutaj

Krok 4: Pożądana zależność zostanie wyświetlona na liście wyszukiwania, wybierz com.google.code.gson: gson: 2.7 (jest to najnowsza wersja w momencie, gdy napisałem odpowiedź), naciśnij OK

wprowadź opis zdjęcia tutaj

Naciśnij OK w oknie dialogowym „Struktura projektu”. Gradle odpowiednio zaktualizuje skrypty kompilacji.

wprowadź opis zdjęcia tutaj

Mam nadzieję, że to pomoże :)


Znalazłem jakiś problem z tym podejściem, pracowałem nad aplikacją, która używa commons-io-2.5. Po przesłaniu aplikacji do Google Developer Console pokazuje 0 urządzeń obsługiwanych dla podpisanej aplikacji. Po wyczerpującym dochodzeniu doszedłem do wniosku, że muszę umieścić plik jar pod app / libs / commons-io-2.5.jar i zaktualizować zależności w gralde takich jak „pliki kompilacji („ libs / commons-io-2.5.jar ”) ”, nie jestem pewien, co robiłem tutaj źle i dlaczego dokumentacja tego nie obejmuje.
— AB

Tak to działa. Wszystkie pozostałe odpowiedzi nie działały. Android Studio 2.3.3
— imsrgadich,

11

1. Umieść słoik (w moim przypadku gson-2.2.4.jar) w folderze libs.

2. Upewnij się, że pliki kompilacji ( libs/gson-2.2.4.jar) znajdują się w pliku build.gradle.

3. Teraz kliknij „Synchronizuj projekt z plikami Gradle” (od lewej do przycisku Menedżera AVD na górnym pasku).

Po wykonaniu powyższych trzech czynności zaczęło działać dobrze.


9

Pobierz i skopiuj swój .jarplik do libsfolderu, a następnie dodaj tę linię do build.gradle:

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'com.google.code.gson:gson:2.3.1'
}

Nie zapomnij kliknąć „Synchronizuj teraz”


9

Możesz to zrobić za pomocą dwóch opcji.

pierwszy prosty sposób.

Skopiuj plik .jar do schowka, a następnie dodaj go do folderu libs. Aby zobaczyć folder libs w projekcie, wybierz projekt z combobox nad folderami.

następnie kliknij prawym przyciskiem myszy plik .jar i kliknij dodaj jako bibliotekę, a następnie wybierz moduł, a następnie ok. Plik .jar można zobaczyć w pliku build.gradle w bloku zależności.

 dependencies {
        implementation fileTree(dir: 'libs', include: ['*.jar'])
        implementation 'com.android.support:appcompat-v7:21.0.3'
        implementation project(':okhttp-2.0.0')
        implementation 'com.google.code.gson:gson:2.3.1'
    }

Po drugie: możemy dodać plik .jar do modułu, importując ten plik .jar jako moduł .jar, a następnie dodaj ten moduł do dowolnego modułu, który chcemy.

moduł importu ---> wybierz plik .jar -> niż importuj jako .jar - wprowadź opis zdjęcia tutaj

Następnie CTRL + ALT + SHIFT + S -> projektu wytrzymałość -> wybierz moduł, który chcesz, aby dodać słoik -> Zależności -> Zależność modułu. build.gradle modułu zostanie zaktualizowany automatycznie. wprowadź opis zdjęcia tutaj


Miły. jedna edycja - teraz jest to „Nowy moduł” (Android Studio 1.0.1). „Moduł importu” wysyła cię do innego kreatora.
— Aviv Ben Shabat

7

Zrobiłem ponad 3 kroki i jego urok pracy dla mnie.

(Używam Android Studio 2.1.2)

wprowadź opis zdjęcia tutaj

Krok 1

  • Dodaj nazwę pakietu jar (jako przykład compile 'com.squareup.okhttp3:okhttp:3.3.1') do skryptu budowania stopni w build.gradle (Module: app) .

wprowadź opis zdjęcia tutaj

Krok 2: Kliknij prawym przyciskiem myszy folder aplikacji -> Nowy -> Moduł

wprowadź opis zdjęcia tutaj

Krok 3: Kliknij opcję Importuj pakiet JAR / .AAR, a następnie przejrzyj swój pakiet. jako przykład: OkHttp.jar

wprowadź opis zdjęcia tutaj


7

W systemie Android Studio 3+:

Powinieneś być w stanie po prostu skopiować plik jar do folderu libs bezpośrednio pod folderem aplikacji.

... myproject \ app \ libs \ myfile.jar

Następnie wybierz Pliki projektu z menu rozwijanego w oknie Projekty, kliknij prawym przyciskiem myszy projekt, wybierz Synchronizuj, aby zobaczyć plik w plikach projektu. Automatycznie doda zależności w pliku stopni (Moduł: aplikacja).

dependencies {
...
    implementation files('libs/myfile.jar')

Oto inne rozwiązanie:

Przejdź do widoku Pliki projektu (wybierz Pliki projektu z menu rozwijanego).

wprowadź opis zdjęcia tutaj

Wybierz Nowy ... Katalog, utwórz folder o nazwie libs bezpośrednio w aplikacji.

wprowadź opis zdjęcia tutaj

Otwórz Eksploratora plików, skopiuj i wklej plik jar do folderu libs.

W Android Studio kliknij prawym przyciskiem myszy plik jar i wybierz Dodaj jako bibliotekę ... z menu podręcznego.

wprowadź opis zdjęcia tutaj

Plik powinien zostać wyświetlony na liście zależności w pliku stopni:

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

Otwórz plik Java i dodaj tam instrukcję importu:

import com.xxx.xxx;

7

Umieść .jarpliki w libsfolderze projektu Android.

Następnie dodaj ten wiersz kodu do pliku oceny aplikacji:

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

W przypadku wersji Androida 3.0 i nowszej wersji lepiej jest użyć tego:

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

7

W przeciwieństwie do Eclipse nie musimy pobierać słoika i umieszczać go w folderze / libs. Gradle obsługuje te rzeczy, musimy tylko dodać zależności Gradle, Gradle pobiera je i umieszcza w pamięci podręcznej gradle.

Musimy dodać zależności, ponieważ:

zależności {wdrożenie 'com.google.code.gson: gson: 2.2.4'}

to wszystko Jednak możemy również pobrać jar i dodać to jako bibliotekę, ale najlepszą praktyką jest dodanie zależności Gradle.


5
menu File -> project struct -> module select "app" -> dependencies tab -> + button 
-> File dependency -> PATH/myfile.jar

5

Krok 1: Teraz app folderpowinieneś zobaczyć libs, jeśli go nie widzisz, a następnie utwórz go .

Krok 2: Drag & Drop the .jar file heremoże pojawić się monit "This file does not belong to the project", wystarczy kliknąć OKprzycisk.

Krok 3: Teraz powinieneś zobaczyć plik jar w folderze libs , kliknij prawym przyciskiem myszy plik jar i wybierz"Add as library", Click OK for prompt "Create Library"

Krok 4: Teraz ten słoik został dodany.

wprowadź opis zdjęcia tutaj


4

Utwórz bibliotekę lib. Dodaj swój plik .jar. Kliknij go prawym przyciskiem myszy, a zobaczysz, że dodaj słoik jako zależność. Kliknij na to. To wszystko, co musisz zrobić. Można znaleźć zależności dodane do pliku build.gradle.


4

1) utwórz folder „your_libs” w folderze Project / app / src.

2) Skopiuj plik jar do tego folderu „your_libs”

3) W Android Studio przejdź do Plik -> Struktura projektu -> Zależności -> Dodaj -> Zależność pliku i przejdź do pliku jar, który powinien znajdować się w obszarze „src / your_libs”

3) Wybierz plik jar i kliknij „Ok”

a następnie możesz zobaczyć na swoim build.gradle w następujący sposób: skompiluj pliki ('src / your_libs / your.jar')


4

W Android Studio 1.1.0. Rozwiązałem to pytanie, wykonując następujące czynności:

1: Umieść plik jar w katalogu libs. (w Finderze)

2: Otwórz ustawienia modułu, przejdź do Zależności, w lewym dolnym rogu znajduje się przycisk plus. Kliknij przycisk plus, a następnie wybierz „Zależność pliku”. Tutaj możesz zobaczyć plik jar. Wybierz i zostanie rozwiązany.


4

Przeczytałem wszystkie odpowiedzi tutaj i wszystkie wydają się obejmować stare wersje Android Studio!

Dzięki projektowi utworzonemu w Android Studio 2.2.3 po prostu musiałem utworzyć libskatalog podapp i umieścić tam mój słoik. Zrobiłem to z moim menedżerem plików, nie trzeba klikać ani edytować niczego w Android Studio.

Dlaczego to działa? Otwórz Kompiluj / Edytuj biblioteki i zależności, a zobaczysz:

{include=[*.jar], dir=libs}

3

W systemie Mac OS X:

  1. Dodaj słoik jako bibliotekę (przeciągnij słoik do bibliotek, kliknij prawym przyciskiem myszy dodaj jako lib)

  2. Dodaj instrukcję kompilacji do build.grade

  3. Zainstaluj gradle v1.6(użyj Homebrew)

    • stopień instalacji parzenia
    • stopień -v
    • jeśli nie v1.6, uaktualnij homebrew
  4. gradle clean (odbudowa Androida nie działała)

To mnie załatwiło.


3

Jak wielu wcześniej wspomniałem, należy dodać

compile files('libs/gson-2.2.3.jar') 

do pliku build.gradle.

Mam jednak projekt w Android Studio, który został migrowany z Eclipse iw tym przypadku folder „libs” nosi nazwę „lib”, więc usunięcie „s” rozwiązało problem.


3
  1. Dodano libsfolder na poziomie app.
  2. Dodano wszystko jarsw tym projekcie.
  3. Następnie zaznacz wszystkie słoiki w libsfolderze,
  4. kliknij wybrane elementy prawym przyciskiem myszy i powiedz add library
  5. wtedy znajdziesz opcję rozszerzenia słoików w samym eksploratorze projektu.

Zauważyłem CTRL+ ALT+ SHIFT+ S-> strukturę projektu -> moduł aplikacji -> Zależności " początkowo miałem wpis jak (dir: 'libs', include: '*.jar')poniżej compile-option. A po dodaniu słoika zgodnie z powyższymi krokami, build.gradleotrzymałem wpisy dla nowego dodanego sam słoik.


3

W Android Studio 2.1 postępuję w ten sposób,

Idź do aplikacji -> src-> main -> folder zasobów (jeśli nie jest dostępny, utwórz go) -> umieść pliki JAR

wprowadź opis zdjęcia tutaj

W swoim build.gradle dodaj taką zależność,

implementation files('src/main/assets/jsoup.jar')
implementation files('src/main/assets/org-apache-xmlrpc.jar')
implementation files('src/main/assets/org.apache.commons.httpclient.jar')
implementation files('src/main/assets/ws-commons-util-1.0.2.jar')

Synchronizuj teraz. Teraz Twoje pliki JAR są gotowe do użycia.


Dlaczego nie korzystasz z katalogu libs?
— Deni Erdyneev

@ErdeniErdyneev Podaję inne podejście do przechowywania plików jar. dlaczego nie korzystam z zasobów? jakieś problemy w moim podejściu? Jestem gotowy poprawić błędy, jeśli się mylę
— Ranjith Kumar

3

W przypadku nowszego Androida 1.0.2 w pliku build.gradle znajduje się już następujący element

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

Dodaj słoik z biblioteką do folderu libs -> kliknij prawym przyciskiem myszy bibliotekę -> kliknij dodaj jako bibliotekę -> poprosi cię o dodanie projektu do - - wybierz projekt -> kliknij ok Następujący wiersz zostanie automatycznie dodany do kompilacji .gradle

implementation files('libs/android-query.jar')

To mi zrobiło. nic więcej nie było wymagane. Pokazałem to dla Androida Aquery innej biblioteki innej firmy dla Androida.


2

Moja odpowiedź polega w zasadzie na zebraniu niektórych poprawnych, ale niepełnych odpowiedzi podanych powyżej.

  1. Otwórz build.gradle
  2. Dodaj następujące:

    dependencies {
    compile 'com.android.support:appcompat-v7:19.+'
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.google.code.gson:gson:2.3'
    }

    Umożliwi to obsługę dwóch różnych sposobów dodawania zależności. compile fileTree(dir: 'libs', include: ['*.jar'])(Jak wspomniano @Binod) informuje kompilator, aby zajrzeć pod bibliotekami dla dowolnego folderu słoika. Dobrą praktyką jest tworzenie takiego folderu „libs”, który będzie zawierał pakiety jar, z których musi korzystać nasza aplikacja.

Pozwoli to również na obsługę zależności Maven. Kompilacji 'com.google.code.gson:gson:2.3'(jak wspomniano przez @saneryee) jest inny zalecany sposób, aby dodać zależności, które są w centrum zdalnego repozytorium, a nie w naszym / libs „lokalnym repozytorium”. Zasadniczo informuje gradla, aby szukał tej wersji tego pakietu, i informuje kompilator, aby wziął go pod uwagę podczas kompilowania projektu (umieszczenie go w ścieżce klas)

PS: Używam obu

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.