Ma üritan kasutada uut Android Studio't, kuid ma ei saa seda õigesti tööle.
Ma kasutan Gson raamatukogu JSON-objektide serialiseerimiseks/deserialiseerimiseks. Aga see raamatukogu ei ole kuidagi'ile lisatud build'ile.
Ma olin loonud uue projekti, millel on ainult MainActivity. Kopeerisin gson-2.2.3.jar kausta /libs ja lisasin selle raamatukogu sõltuvuseks (paremklikk->Add as library). See lisab jar android stuudiosse, nii et sellele saab viidata lähtekoodifailidest.
Kui ma üritan projekti käivitada, ei saa ta kompileerida, nii et ma lisasin:
compile files('libs/gson-2.2.3.jar')
sõltuvustesse de .gradle failis. Pärast seda kompileerib ta korrektselt, kuid rakenduse käivitamisel saan ClassDefNotFoundException
.
Kas keegi teab, mida ma's valesti teen?
Ma olen mitu tundi sama asjaga võidelnud, püüdes Gson'i purgi tööle saada. Ma lõpuks murdnud see - siin on sammud, mida ma tegin:
Pange Gson jar (minu puhul gson-2.2.4.jar
) kausta libs
.
Klõpsake sellel paremaga ja vajutage 'Add as library'
Veenduge, et compile files('libs/gson-2.2.4.jar')
on teie build.gradle
failis (või compile fileTree(dir: 'libs', include: '*.jar')
, kui kasutate palju jar-faile).
Edit : Kasutage implementatsioonifaile('libs/gson-2.2.4.jar')
(või implementatsioonifailipuu(dir: 'libs', include: '*.jar')
) Android Studio 3.0+'s.
Tehke puhas build (tõenäoliselt saate seda Android Studio's hästi teha, aga et veenduda, navigeerisin terminalis oma rakenduse juurkausta juurde ja sisestasin gradlew clean
. Ma kasutan Mac OS X-i, teie süsteemis võib see käsk olla teistsugune.
Pärast seda, kui ma tegin ülaltoodud neli, hakkas see kenasti tööle. Ma arvan, et 'Add as library' samm oli see, mida ma'd varem vahele jätsin, ja see ei'ei töötanud enne, kui ma seda ka puhastasin.
[Edit - lisasin build.gradle
sammu, mis on samuti vajalik, nagu teised on märkinud]
IIRC, lihtsalt kasutades "Add as library" ei piisa sellest, et see koos projektiga kompileerida.
Vaadake Intellij's help raamatukogude lisamise kohta projektile.
See osa, mis peaks sind kõige rohkem huvitama, on see:
(Failis
File > Project Structure
) Avage mooduli seaded ja valige vahekaart Dependencies.
Klõpsake vahekaardil Dependencies (Sõltuvused) nupule add (lisada) ja valige Library (raamatukogu).
Dialoogis Choose Libraries valige üks või mitu raamatukogu ja klõpsake Add Selected.
Kui raamatukogu ei ilmu dialoogiaknas, lisage see raamatukogude seadetes, kohe moodulite all.
Te ei peaks enam compile files()
lisama ja raamatukogu peaks olema korralikult teie projekti lisatud.
Mac OS X-i puhul:
Lisage jar raamatukoguna (lohistage jar libs'ile, paremklõpsake add as lib).
Lisage kompileerimisväide faili build.grade
.
Paigalda gradle v1.6
(kasuta homebrew).
See lahendas mind.