Android Studio: භාජනයක් පුස්තකාලයක් ලෙස එකතු කරන්න?


1033

මම නව ඇන්ඩ්‍රොයිඩ් ස්ටුඩියෝ භාවිතා කිරීමට උත්සාහ කරමි, නමුත් එය නිවැරදිව ක්‍රියාත්මක වන බවක් මට නොපෙනේ.

මම GSON පුස්තකාලය භාවිතා කරන්නේ JSON- වස්තූන් අනුක්‍රමිකකරණය කිරීමට / අවලංගු කිරීමට ය. නමුත් පුස්තකාලය කෙසේ හෝ ගොඩනැගීමට ඇතුළත් නොවේ.

මම ප්‍රධාන ක්‍රියාකාරකමක් සහිත නව ව්‍යාපෘතියක් නිර්මාණය කර ඇත්තෙමි . / Libs ෆෝල්ඩරයේ gson-2.2.3.jar පිටපත් කර එය පුස්තකාල යැපීමක් ලෙස එක් කළේය (දකුණු ක්ලික් කරන්න-> පුස්තකාලය ලෙස එක් කරන්න). ඇන්ඩ්‍රොයිඩ් චිත්‍රාගාරයේ ඇති භාජනය මෙයට ඇතුළත් වන බැවින් එය ප්‍රභව ලිපිගොනු වලින් යොමු කළ හැකිය.

මම ව්‍යාපෘතිය ක්‍රියාත්මක කිරීමට උත්සාහ කරන විට එය සම්පාදනය කළ නොහැක.

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

de .gradle ගොනුවේ පරායත්තතාවයට. ඊට පසු එය නිවැරදිව සම්පාදනය කරන නමුත් යෙදුම ක්‍රියාත්මක කිරීමේදී මට a ClassDefNotFoundException.

මම කරන වැරැද්ද කවුරුහරි දන්නවාද?



2
මෙය ගැටළුව විසඳන්නේ නැතත්, "ක්‍රියාත්මක කිරීම" සඳහා "සම්පාදනය" අතහැර දැමූ බව පෙන්වා දිය යුතුය.
අමීර් රේසාඩේ

Answers:


1539

මම පැය ගණනාවක් තිස්සේ එකම දේ සමඟ පොරබදමින්, ග්සන් බඳුන නොඅඩු ලෙස වැඩ කිරීමට උත්සාහ කරමි. මම අවසානයේ එය බිඳ දැමුවෙමි - මෙන්න මම ගත් පියවර:

  1. Gson භාජනය (මගේ නඩුවේ gson-2.2.4.jar) libsෆෝල්ඩරයට දමන්න
  2. එය දකුණු ක්ලික් කර 'පුස්තකාලයක් ලෙස එක් කරන්න' ඔබන්න
  3. compile files('libs/gson-2.2.4.jar')එය ඔබගේ build.gradleගොනුවේ ඇති බවට සහතික වන්න (හෝ compile fileTree(dir: 'libs', include: '*.jar')ඔබ බොහෝ භාජන ගොනු භාවිතා කරන්නේ නම්)

    සංස්කරණය කරන්න: Android Studio 3.0+ හි implementation files('libs/gson-2.2.4.jar')(හෝ implementation fileTree(dir: 'libs', include: '*.jar')) භාවිතා කරන්න

  4. පිරිසිදු නිමැවුමක් කරන්න (ඔබට බොහෝ විට ඇන්ඩ්‍රොයිඩ් ස්ටුඩියෝවෙන් මෙය කළ හැකිය, නමුත් මම ටර්මිනලය තුළ මගේ යෙදුමේ මූල ෆෝල්ඩරයට සැරිසැරූ බව සහතික කර ටයිප් කළෙමි.මම gradlew cleanමැක් ඕඑස් එක්ස් හි සිටිමි, ඔබේ පද්ධතියේ විධානය වෙනස් විය හැකිය

මම ඉහත හතර කළ පසු, එය හොඳින් ක්‍රියාත්මක වීමට පටන් ගත්තේය. මම හිතන්නේ 'පුස්තකාලයක් ලෙස එක් කරන්න' පියවර මට කලින් මඟ හැරුණු අතර මම එය පිරිසිදු කරන තුරු එය ක්‍රියාත්මක නොවීය.

[සංස්කරණය කරන්න - build.gradleඅනෙක් අය පෙන්වා දී ඇති පරිදි අවශ්‍ය පියවර එකතු කරන්න ]


6
gradlew clean මටත් උදව් කළා. ගොඩක් ස්තුතියි!
ෆ්‍රැන්ටීක් ෂියාසික්

172
සෑම භාජන ගොනුවක් සඳහාම පේළියක් පැහැදිලිව එක් කිරීමට ඔබට අවශ්‍ය නැතිනම්: compile fileTree(dir: 'libs', include: '*.jar')
J c

65
ග්‍රැඩෙල්ගේ අස්ථිර පරායත්තතා කළමනාකරණයේ වාසිය ලබා ගැනීමට මම නිර්දේශ කරමි. මේවන් සෙන්ට්‍රල් () වෙතින් gson බාගත කරන්න (අන්තර්ජාල සම්බන්ධතාවයක් අවශ්‍ය නම් පිළිගත හැකි ය. repositories { mavenCentral() }ඔබේ compile files(...)රේඛාව සරලව එකතු කර ප්‍රතිස්ථාපනය කරන්න compile 'com.google.code.gson:gson:2.2.4'. පුස්තකාල නොව ප්‍රභව කේත ගොනු පමණක් ලුහුබඳින්න
ජෝ

38
2 වන පියවරේදී මට Add as Library විකල්පය
නොලැබේ

6
ඇන්ඩ්රොයිඩ් ශබ්දාගාර 1.0.2 දී, 2 සහ 3 මෙම රේඛාව පෙරනිමි දැනටමත් නිසා අවශ්ය නැත පියවර build.gradle: බැදීමකට fileTree (හිස් තීරුවෙහි: 'libs', ඇතුළත් වේ: [ '* .jar'])
බ්රයන් Marick

270

මොඩියුලයකට පුස්තකාලයක් ලෙස දේශීය භාජන ගොනුවක් එක් කිරීම සඳහා උපදෙස් මෙන්න:

  1. මොඩියුල නාමාවලියෙහි ඉහළ මට්ටමේ 'ලිබ්ස්' ෆෝල්ඩරයක් සාදන්න ('src' නාමාවලිය අඩංගු එකම නාමාවලිය)

  2. තුළ build.gradle file: ඔබේ පරායත්තයන් වසා ඇති බව එකතු වූ නිසා පහත සඳහන්

    dependencies {
        // ... other dependencies
        compile files('libs/<your jar's name here>')
    }
  3. ඇන්ඩ්‍රොයිඩ් ස්ටුඩියෝ දැනටමත් ග්‍රැඩ්ලව් ඔතා සකස් කර තිබිය යුතුය. විධාන රේඛාවේ සිට, ඔබේ ව්‍යාපෘතියේ ඉහළ මට්ටමට යන්න ( gradlewගොනුවක් ඇති නාමාවලිය ).

    දුවන්න ./gradlew assemble. මෙය ව්‍යාපෘතිය පුස්තකාලය සමඟ සම්පාදනය කළ යුතුය. ඔබට අවශ්‍ය පරිදි ඔබේ build.gradle ගොනුවේ දෝෂ නිවැරදි කිරීමට අවශ්‍ය විය හැකිය.

  4. ඇන්ඩ්‍රොයිඩ් ස්ටුඩියෝ IDE හි කේතනය කිරීමේදී සහය සඳහා දේශීය භාජන ලිපිගොනු පුස්තකාල ලෙස හඳුනා ගැනීමට නම්, ඔබ තවත් පියවර කිහිපයක් ගත යුතුය:

    4.1. වම් පුවරුවේ ඇති මොඩියුලය මත දකුණු ක්ලික් කර තෝරන්න Open Library Settings.

    4.2. සංවාදයේ වම් පුවරුවේ, තෝරන්න Libraries.

    4.3. ක්ලික් කරන්න+පැනලයට ඉහළින් ලකුණ වමේ සිට දෙවන ->Java

    මෙනු

    4.4. ඔබේ දේශීය භාජනය තෝරා එය ව්‍යාපෘතියට එක් කරන්න.

  5. ඔබට ඉහත ./gradlewවිධානය තවත් වරක් ක්‍රියාත්මක කිරීමට අවශ්‍ය විය හැකිය


මෙය මට වැඩ කළා. මට උබුන්ටු හි ඇන්ඩ්‍රොයිඩ් ස්ටුඩියෝ අනුවාදය 1.2 බිල්ඩ් 141.1890965 ඇත. "ඇන්ඩ්‍රොයිඩ් ස්ටුඩියෝ 2.5 අනුව" ඔබ කියන්නේ ඇයි? එය වින්ඩෝස් / මැක්හි වෙනස් අනුවාදයක්ද? (1 අ) මෙය සොයා ගැනීම දුෂ්කර විය. ව්‍යාපෘති ව්‍යුහයේ ඉහළ වම්පස කොම්බෝ කොටුව ඇත. "ඇන්ඩ්‍රොයිඩ්" ට පටහැනිව "ව්‍යාපෘතිය" තෝරා "යෙදුම" පුළුල් කිරීමට අවශ්‍යය. (1 ආ) "එකතු කරන්න" විකල්පයක් පැමිණියේ නැත, නමුත් "අලවන්න" ක්‍රියාත්මක විය. (2) මට "ෆයිල්ට්‍රී සම්පාදනය කරන්න" (dir: 'libs', ඇතුළත් කරන්න: ['* .jar']) ", නමුත් තවමත් ඔබේ පැහැදිලි තනි පේළිය එක් කිරීමට සිදුවිය. (4, 5) එක් වරක් අවශ්‍ය නොවේ (3) සාර්ථකව සිදු කරන ලදි. ස්තූතියි!
ෆිල් ෆ්‍රීහෝෆ්නර්

"වම් අත පැනලය"? ඔබ අදහස් කරන්නේ ව්‍යාපෘති පැනලයද? ඕනෑම තැනක විය හැකිය ... ඇන්ඩ්‍රොයිඩ් ස්ටුඩියෝ 2.3.3 සමඟ මට පුස්තකාල සැකසුම් සොයාගත නොහැකි නමුත් මොඩියුල සැකසීම් මත යැපීම් වලට බඳුන එක් කිරීම සමාන බව පෙනේ ...
ඇදහිය නොහැකි ජනවාරි

මැක් පරිගණක සඳහා, ඔබ gradle නම් නෑ: ඔබ ලබා ගන්න නම් $ gradle ස්ථාපනය පෙරන "./gradlew: අවසරය ප්රතික්ෂේප", ඔබ $ CHMOD 755 gradlew පවත්වාගෙන යාම සඳහා අවශ්ය එවිට, ඔබ විසින් $ ක්රියාත්මක කළ හැකිය එකලස් ./gradlew
Azkario Rizky

110

ව්යාපෘතියේ දකුණු ක්ලික් කරන්න

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

පහත රූපරාමු අනුගමනය කරන්න:

1:

පියවර 1

2:

රූප විස්තරය මෙහි ඇතුළත් කරන්න

3:

රූප විස්තරය මෙහි ඇතුළත් කරන්න

ඔබ මෙය දකිනු ඇත:

රූප විස්තරය මෙහි ඇතුළත් කරන්න


Am කැම්කොනර් මමත් එසේ සිතමි .. වෙනත් පිළිතුරු යල් පැන ගිය ඒවා ය
ගනේෂ් පාණ්ඩේ

මෙය පිළිතුරයි
ඇලස්සැන්ඩ්‍රෝ

4
නමුත් එය පුස්තකාලයක් ලෙස හඳුනාගෙන නොමැත. උදාහරණයක් ලෙස, ඇන්ඩ්‍රියෝඩ් චිත්‍රාගාර සංස්කාරකය: ආනයනය කරන ලද භාජනයේ පැකේජයක් ආනයනය කිරීමට උත්සාහ කරන්න, හඳුනාගෙන නොමැත.
ඩේව්

මේ ආකාරයෙන් ආනයනය කළ මොඩියුලය ඉවත් කිරීමට ක්‍රමයක් සොයා ගැනීමට නොහැකි විය.
ඩේව්

"පිටපත්-ජාර්-සිට-ලිබ්ස්" ෆෝල්ඩර ක්‍රමයේ අනෙක් පිළිතුරු නොව බාහිර භාජන එකතු කිරීමේ මෙම ක්‍රමය මා භාවිතා කළ යුත්තේ ඇයි?
ඊඩෝ 95

48

Android Stuido හි, Gson lib කළමනාකරණය කිරීමට Gradle භාවිතා කිරීමට මම කැමතියි.

ඔබගේ build.gradle ගොනුවේ පරායත්තතාවයට පහළින් එක් කරන්න.

repositories {mavenCentral()}

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

හැම දෙයක්ම හරි.

ඔබට මෙම ලිපිය ද දැක ගත හැකිය. ඇන්ඩ්‍රොයිඩ් චිත්‍රාගාරයේ තෙවන පාර්ශවීය පුස්තකාලය ඒකාබද්ධ කිරීමට හොඳම ක්‍රමය


මෙම ක්‍රමය හොඳම වන්නේ එය මේවන් භාවිතා කරන බැවිනි.
ගැරී ඩ්‍රොසෙල්ලා

1
අනුවාද අංකය නවතම දේට යාවත්කාලීන කිරීමට මතක තබා ගන්න :) මේ වන විට එය 2.3.1 වේ, නමුත් සබැඳිය
Kitalda

47

IIRC, හුදෙක් "පුස්තකාලයක් ලෙස එක් කරන්න" භාවිතා කිරීම ව්‍යාපෘතිය සමඟ සම්පාදනය කිරීමට ප්‍රමාණවත් නොවේ.

ඉන්ටෙලිජ්ගේ උදව් පරීක්ෂා කරන්නව්‍යාපෘතියකට පුස්තකාල එකතු කිරීම ගැන

ඔබ වඩාත් උනන්දු විය යුතු කොටස මෙයයි:

(තුළ File > Project Structure ) මොඩියුල සැකසුම් විවෘත කර යැපුම් පටිත්ත තෝරන්න.

පරායත්ත පටිත්තෙහි, එකතු කරන්න ක්ලික් කර පුස්තකාලය තෝරන්න.

පුස්තකාල තෝරන්න සංවාද කොටුව තුළ පුස්තකාල එකක් හෝ කිහිපයක් තෝරාගෙන එකතු කරන්න තෝරන්න ක්ලික් කරන්න.

සංවාද කොටසේ පුස්තකාලය නොපෙන්වන්නේ නම්, එය මොඩියුලයට පහළින් පුස්තකාල සැකසුම් තුළ එක් කරන්න.

ඔබට compile files()තවදුරටත් එකතු කිරීමට අවශ්‍ය නොවිය යුතු අතර පුස්තකාලය ඔබේ ව්‍යාපෘතියට නිසි ලෙස එකතු කළ යුතුය.


පුස්තකාලයක් ලෙස එක් කරන්න දැනටමත් බඳුන එකම ආකාරයකින් එකතු කරන්න. ඉතින් මම හිතන්නේ ප්‍රති result ලය එක හා සමානයි. මම පසුව උත්සාහ කරමි.
ඔසී

පුස්තකාලය මෙය සාර්ථකව කරන බැවින් එක් කරන්න - මම ඔබ ඔසීගේ බෝට්ටුවේම සිටිමි - හරියටම එකම ගැටලුවකි.
ජෝනා එච්.

හරි, මම සිතුවේ පුස්තකාලයක් ලෙස එකතු කරන්න එය පුස්තකාල ලැයිස්තුවට පමණක් එකතු කළ අතර එය පරායත්තතා මොඩියුලයට එකතු නොකළේය.
ජුකුර්පා

මම මෙය උත්සාහ කළ විට, එය මගේ build.gradle ගොනුවට සංයුක්ත ලිපිගොනු () පේළි එකතු කර ඇති බව මට පෙනී ගියේය, නමුත් එය පුස්තකාලවලට (/libs/foo.jar) නිරපේක්ෂ මාර්ග භාවිතා කරන බවක් පෙනෙන්නට තිබුණි. මම මේවා සාපේක්ෂ මාර්ග වලට (libs / foo.jar) වෙනස් කරමි, එය මට ගැටලුව විසඳීය.
මැට් හොල්ගේට්

40

මෙම සියලු විසඳුම් යල් පැන ගිය ඒවා ය. ඇන්ඩ්‍රොයිඩ් ස්ටුඩියෝ හි දැන් එය ඇත්තෙන්ම පහසු ය:

ගොනුව> නව මොඩියුලය ...

ඊළඟ තිරය අමුතු ලෙස පෙනේ, ඔබ යම් විජට් එකක් හෝ වෙනත් දෙයක් තෝරාගෙන ඇති නමුත් එය පළමු පින්තූරයේ සහ පහළින් අනුචලනය කර "ආනයන JAR හෝ .AAR පැකේජය" සොයා ගන්න.

ඉන්පසු Project Structureගොනු මෙනුවෙන් ගන්න app. විවෘත කළ කවුළුවෙන් තෝරන්න ඉන්පසු තෝරන්න dependencies, ඉන්පසු ඔබන්න green plus button, තෝරන්න module dependencyඉන්පසු ඔබ ආනයනය කළ මොඩියුලය තෝරන්නOK


මම හිතන්නේ මේවන් භාවිතා කිරීම තවමත් මහා පරිමාණ ව්‍යාපෘති සඳහා වඩා හොඳ විසඳුමක් වනු ඇත, එනම් සනීපාරක්ෂක විසින් සපයනු ලැබේ.
ගැරී ඩ්‍රොසෙල්ලා

2
මෙය පවා යල් පැන ගිය එකක් බව පෙනේ. ඔබගේ .jar ගොනුව ඔබේ "ලිබ්ස්" නාමාවලියෙහි තබන්න, එය ස්වයංක්‍රීයව ඔබේ ව්‍යාපෘතියට සම්පාදනය කරනු ඇත. ඇන්ඩ්‍රොයිඩ් ස්ටුඩියෝ 1.4 හි "ලිබ්ස්" වෙතින් සියලුම * .jar ගොනු ඇතුළත් කිරීම සඳහා දැනටමත් පෙරනිමි රීති සැකසුමක් ඇත.
ඩැනියෙල් ටෙස්ටා

35

ඇන්ඩ්‍රොයිඩ් ස්ටුඩියෝ හි බාහිර පුස්තකාලය එක් කිරීමට පහසු පියවර

  1. ඔබ ව්‍යාපෘති ගවේෂකයේ ඇන්ඩ්‍රොයිඩ් දර්ශනයේ සිටී නම්, එය පහත පරිදි ව්‍යාපෘති දර්ශනයට වෙනස් කරන්න

රූප විස්තරය මෙහි ඇතුළත් කරන්න

  1. බාහිර පුස්තකාලය එක් කිරීමට ඔබ කැමති මොඩියුලය මත දකුණු ක්ලික් කරන්න, ඉන්පසු නව> ඩිරෙක්ට්‍රෝයි තෝරා එය ' ලිබ්ස් ' ලෙස නම් කරන්න .
  2. දැන් blah_blah.jar ' ලිබ්ස් ' වෙත පිටපත් කරන්න ' ෆෝල්ඩරයට පිටපත් කරන්න
  3. Blah_blah.jar මත දකුණු ක්ලික් කරන්න, ඉන්පසු ' පුස්තකාලයක් ලෙස එක් කරන්න .. ' තෝරන්න . මෙය ස්වයංක්රීයව එකතු කරන්න සහ ප්රවේශය ඇත build.gradle ලෙස එක්රැස් ගොනු ( 'libs / blah_blah.jar') සහ සමමුහුර්ත වන gradle. ඔබ ඉවරයි

කරුණාකර සටහන් කරන්න: ඔබ තෙවන පාර්ශවීය පුස්තකාල භාවිතා කරන්නේ නම් , ග්‍රෙඩ්ල් ස්ක්‍රිප්ට් ස්වයංක්‍රීයව JAR බාගත කරන පරායත්තයන් භාවිතා කිරීම වඩා හොඳය .

උදා: 'com.google.android.gms: play-services-ads: 9.4.0' සම්පාදනය කරන්න

ශ්‍රේණි පරායත්තතා කළමනාකරණය පිළිබඳ වැඩිදුර කියවන්න


34

'ගොනු සම්පාදනය කරන්න ...' මා වෙනුවෙන් වැඩ කිරීමට භාවිතා කළ නමුත් තවත් නොවේ. බොහෝ වේදනාවෙන් පසුව, මෙය වෙනුවට වැඩ කරන බව මට පෙනී ගියේය:

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

එය වෙනසක් සිදු කළේ ඇයිදැයි මා දන්නේ නැත, නමුත්, අවම වශයෙන් නපුරු දෙය දැන් ක්‍රියාත්මක වේ.


1
කෙසේ වෙතත් මෑතකදී මට හමු වූ මෙය සමහර විට AS ඔබ අළුත් සමමුහුර්තයක් කරන තුරු නව / යාවත්කාලීන කළ භාජන තෝරා නොගනී.
ස්කොට්යාබ්

මතක තබා ගන්න, "සම්පාදනය" "ක්‍රියාවට නැංවීමට" පක්ෂව ප්‍රතික්ෂේප කරන ලදි.
අමීර් රේසාඩේ

17
  1. වෙබ් අඩවියෙන් පුස්තකාල ගොනුව බාගන්න
  2. කවුළු ගවේෂණයෙන් පිටපත් කරන්න
  3. ප්‍රොජෙක්ට් එක්ස්ප්ලෝරර් වෙතින් ලිබ් ෆෝල්ඩරයට අලවන්න
  4. Ctrl+ Alt+ Shift+S ව්‍යාපෘති ව්‍යුහය විවෘත කරන්න
  5. පරායත්තතා පටිත්ත තෝරන්න, + භාවිතා කර ගොනුව එක් කරන්න
  6. මෙවලම් තීරුව බොත්තම භාවිතයෙන් ග්‍රැඩල් ගොනුව සමඟ ව්‍යාපෘතිය සමමුහුර්ත කරන්න

ඒකෙන් මගේ ප්‍රශ්නය විසඳුණා. උත්සාහ කරන්න, යමෙකුට වැඩි විස්තර අවශ්‍ය නම් මට දන්වන්න.


17

මම එක් පේළියක් එක් කිරීමෙන් එය ක්‍රියාත්මක කළෙමි 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
}

ක්ලික් කිරීමට අමතක නොකරන්න Sync nowඉහළ දකුණු කෙළවරේ .

මම ඇන්ඩ්‍රොයිඩ් ස්ටුඩියෝ 1.0.1 භාවිතා කරමි.


fileTreeරේඛාව කරන්නේ කුමක්ද යන්න ඔබ විස්තාරනය කරනවාද?
Thufir

13

ඇන්ඩ්‍රොයිඩ් ස්ටුඩියෝ හි යැපුම් කළමණාකරු තෙවන පාර්ශවීය පරායත්තතා කළමනාකරණය කිරීම සඳහා ඉතා පහසු සහ බලවත් බව මට පෙනී ගියේය (මෙහි සඳහන් gson වැනි). මා වෙනුවෙන් වැඩ කළ පියවරෙන් පියවර උපදෙස් සැපයීම (සටහන: මෙම පියවර ඇන්ඩ්‍රොයිඩ් ස්ටුඩියෝ 1.6 සහ වින්ඩෝස් වේදිකාවේ ඉදිරියට එන අනුවාද සඳහා පරීක්ෂා කරනු ලැබේ).

පියවර -1: "ගොඩනැගීම> පුස්තකාල සහ යැපීම් සංස්කරණය කරන්න ..." එය "ව්‍යාපෘති ව්‍යුහය" යන දෙබස විවෘත කරයි.

රූප විස්තරය මෙහි ඇතුළත් කරන්න

පියවර -2: "යෙදුම" තෝරන්න, පසුව "පරායත්තතා" ටැබය තෝරන්න. ඉන්පසු "එකතු කරන්න> 1 පුස්තකාල යැපීම" තෝරන්න

රූප විස්තරය මෙහි ඇතුළත් කරන්න

පියවර -3: "පුස්තකාල යැපීම තෝරන්න" සංවාද කොටුව පෙන්වනු ඇත, සෙවීමේදී "gson" සඳහන් කර "සෙවුම් බොත්තම" ඔබන්න

රූප විස්තරය මෙහි ඇතුළත් කරන්න

පියවර -4: අපේක්ෂිත පරායත්තතාවය සෙවුම් ලැයිස්තුවේ පෙන්වනු ඇත, com.google.code.gson: gson: 2.7 තෝරන්න (මම පිළිතුර ලියූ අවස්ථාවේ නවතම අනුවාදය මෙයයි), හරි ඔබන්න

රූප විස්තරය මෙහි ඇතුළත් කරන්න

"ව්‍යාපෘති ව්‍යුහය" සංවාදයේ හරි ඔබන්න. ග්‍රේඩ්ල් විසින් ඔබේ බිල්ඩ් ස්ක්‍රිප්ට් ඒ අනුව යාවත්කාලීන කරනු ඇත.

රූප විස්තරය මෙහි ඇතුළත් කරන්න

මෙය උපකාරී වේ යැයි සිතමි :)


මෙම ප්‍රවේශය සමඟ මට යම් ගැටළුවක් හමු වී ඇත, පොදු- io-2.5 ​​භාවිතා කරන යෙදුමේ වැඩ කරමින් සිටිමි. යෙදුම ගූගල් සංවර්ධක කොන්සෝලය වෙත උඩුගත කළ විට, එය අත්සන් කළ APK සඳහා සහය දක්වන උපාංග 0 ක් පෙන්වයි. සවිස්තරාත්මක විමර්ශනයකින් පසුව, මම භාජන ගොනුව යෙදුම / libs / commons-io-2.5.jar යටතේ තැබිය යුතු බවත්, මේ 'සංයුක්ත ලිපිගොනු (' libs / commons-io-2.5.jar ') වැනි ග්‍රැල්ඩ් වල පරායත්තයන් යාවත්කාලීන කළ යුතු බවත් මම තේරුම් ගතිමි. ', මා මෙහි වැරදි කර ඇත්තේ කුමක් ද යන්න සහ ප්‍රලේඛනය මෙය ආවරණය නොකරන්නේ මන්දැයි විශ්වාස නැත.
ඒබී

එය ක්‍රියාත්මක වන ආකාරය මෙයයි. අනෙක් සියලුම පිළිතුරු ක්‍රියාත්මක වූයේ නැත. Android Studio 2.3.3
imsrgadich

11

1. භාජනය දමන්න (මගේ නඩුවේ,gson-2.2.4.jar ) ලිබ්ස් ෆෝල්ඩරයට දමන්න.

2. ගොනු සම්පාදනය කිරීම libs/gson-2.2.4.jarඔබේ build.gradle ගොනුවේ ඇති බවට සහතික වන්න.

3. දැන් "ශ්‍රේණියේ ලිපිගොනු සමඟ සමමුහුර්ත කිරීමේ ව්‍යාපෘතිය" මත ක්ලික් කරන්න (ඉහළ තීරුවේ වමේ සිට AVD කළමනාකරු බොත්තම).

මම ඉහත තුන කළ පසු, එය හොඳින් ක්‍රියාත්මක වීමට පටන් ගත්තේය.


9

ඔබගේ .jarගොනුව libsෆෝල්ඩරයෙන් බාගත කර පිටපත් කරන්න . ඉන්පසු මෙම රේඛාව build.gradle වෙත එක් කරන්න:

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

"දැන් සමමුහුර්ත කරන්න" ක්ලික් කිරීමට අමතක නොකරන්න


9

ඔබට මෙය විකල්ප දෙකකින් කළ හැකිය.

පළමු සරල ක්‍රමය.

.Jar ගොනුව ක්ලිප්බෝඩ් වෙත පිටපත් කර එය ලිබ්ස් ෆෝල්ඩරයට එක් කරන්න. ව්‍යාපෘතියේ ලිබ්ස් ෆෝල්ඩරය බැලීමට, ෆෝල්ඩරයට ඉහළින් ඇති කොම්බොබොක්ස් වෙතින් ව්‍යාපෘතිය තෝරන්න.

.jar ගොනුව මත දකුණු ක්ලික් කර පුස්තකාලයක් ලෙස එකතු කරන්න ක්ලික් කර මොඩියුලයක් තෝරාගෙන හරි. .Jar ගොනුව build.gradle ගොනුවේ පරායත්තතා කොටස තුළ දැකිය හැකිය.

 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'
    }

දෙවන ක්‍රමය නම්: මෙම .jar ගොනුව .jar මොඩියුලයක් ලෙස ආයාත කිරීමෙන් අපට මොඩියුලයකට .jar ගොනුවක් එක් කළ හැකි අතර පසුව අපට අවශ්‍ය ඕනෑම මොඩියුලයකට මෙම මොඩියුලය එක් කරන්න.

ආනයන මොඩියුලය ---> .jar ලෙස ආනයනය කරනවාට වඩා ඔබේ .jar ගොනුව -> තෝරන්න. රූප විස්තරය මෙහි ඇතුළත් කරන්න

ඉන්පසු CTRL + ALT + SHIFT + S -> project sturure -> භාජනයක් එක් කිරීමට ඔබට අවශ්‍ය මොඩියුලය තෝරන්න -> යැපීම් -> මොඩියුලය පරායත්තතාවය. මොඩියුලයේ build.gradle ස්වයංක්‍රීයව යාවත්කාලීන වේ. රූප විස්තරය මෙහි ඇතුළත් කරන්න


හොඳයි. එක් සංස්කරණයක් - එය දැන් "නව මොඩියුලය" (ඇන්ඩ්‍රොයිඩ් ස්ටුඩියෝ 1.0.1). "ආනයන මොඩියුලය" ඔබව වෙනත් විශාරදයකු වෙත යවයි ..
අවිව් බෙන් ෂබාත්

7

මම පියවර 3 කට වඩා ඉහළින් කර ඇති අතර එහි වැඩ කිරීමේ ආස්වාදය මට තිබේ.

(මම භාවිතා කරන්නේ ඇන්ඩ්‍රොයිඩ් ස්ටුඩියෝ 2.1.2)

රූප විස්තරය මෙහි ඇතුළත් කරන්න

පියවර 1

  • Build.gradle (මොඩියුලය: යෙදුම) යටතේ ඔබේ බඳුන් පැකේජයේ නම (උදාහරණයක් ලෙස compile 'com.squareup.okhttp3:okhttp:3.3.1') ශ්‍රේණියේ බිල්ඩ් ස්ක්‍රිප්ටයට එක් කරන්න .

රූප විස්තරය මෙහි ඇතුළත් කරන්න

පියවර 2: යෙදුම් ෆෝල්ඩරය මත දකුණු ක්ලික් කරන්න -> නව -> මොඩියුලය

රූප විස්තරය මෙහි ඇතුළත් කරන්න

පියවර 3: ආනයනය කරන්න JAR / .AAR පැකේජය ක්ලික් කරන්න ඉන්පසු ඔබේ පැකේජය පිරික්සන්න . උදාහරණයක් ලෙස: OkHttp.jar

රූප විස්තරය මෙහි ඇතුළත් කරන්න


7

Android Studio 3+ සමඟ:

යෙදුම් ෆෝල්ඩරය යටතේ ඇති භාජන ගොනුව ලිබ්ස් ෆෝල්ඩරයට පිටපත් කිරීමට ඔබට හැකි විය යුතුය.

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

ඉන්පසු ව්‍යාපෘති කවුළුවෙහි පතන සිට ව්‍යාපෘති ගොනු තෝරන්න, ව්‍යාපෘතිය මත දකුණු ක්ලික් කරන්න, ව්‍යාපෘති ලිපිගොනු වල ගොනුව බැලීමට සමමුහුර්තකරණය තෝරන්න. එය ස්වයංක්‍රීයව ශ්‍රේණියේ ගොනුවේ පරායත්තයන් එක් කරයි (මොඩියුලය: යෙදුම).

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

මෙන්න තවත් විසඳුමක්:

ව්‍යාපෘති ලිපිගොනු දර්ශනයට යන්න (පතන සිට ව්‍යාපෘති ලිපිගොනු තෝරන්න).

රූප විස්තරය මෙහි ඇතුළත් කරන්න

නව ... නාමාවලිය තෝරන්න, යෙදුම යටතේම ලිබ්ස් නමින් ෆෝල්ඩරයක් සාදන්න.

රූප විස්තරය මෙහි ඇතුළත් කරන්න

ගොනු එක්ස්ප්ලෝරර් විවෘත කරන්න, ඔබේ භාජන ගොනුව ලිබ්ස් ෆෝල්ඩරයට පිටපත් කර අලවන්න.

ඇන්ඩ්‍රොයිඩ් ස්ටුඩියෝ හි, භාජන ගොනුව මත දකුණු ක්ලික් කර උත්පතන මෙනුවෙන් පුස්තකාලයක් ලෙස එක් කරන්න තෝරන්න.

රූප විස්තරය මෙහි ඇතුළත් කරන්න

ශ්‍රේණියේ ගොනුවේ පරායත්තතා ලැයිස්තුවේ ලැයිස්තුගත කර ඇති ගොනුව ඔබ දැකිය යුතුය:

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

ඔබගේ ජාවා ගොනුව විවෘත කර ආයාත ප්‍රකාශය එහි එක් කරන්න:

import com.xxx.xxx;

7

ඇන්ඩ්‍රොයිඩ් ව්‍යාපෘතියේ ෆෝල්ඩරයට .jarගොනු දමන්න libs.

ඉන්පසු යෙදුමේ ශ්‍රේණිගත ගොනුවේ මෙම කේත රේඛාව එක් කරන්න:

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

ඇන්ඩ්‍රොයිඩ් ග්‍රෙඩ්ල් ප්ලගිනය 3.0 සහ පසුව, ඒ වෙනුවට මෙය භාවිතා කිරීම වඩා හොඳය:

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

7

සූර්යග්‍රහණය මෙන් නොව අපට භාජනය බාගත කර / libs ෆෝල්ඩරයට දැමිය යුතු නැත. Gradle විසින් මේ දේවල් හසුරුවන්නේ අපට අවශ්‍ය වන්නේ Gradle පරායත්තතාවයන් එකතු කිරීම පමණි, Gradle එය බාගත කර grade cache තුළට දමයි.

අප විසින් පරායත්තයන් එකතු කළ යුත්තේ:

පරායත්තතා {ක්‍රියාත්මක කිරීම 'com.google.code.gson: gson: 2.2.4'}

කෙසේ වෙතත් අපට භාජනය බාගත කර පුස්තකාලයක් ලෙස එකතු කළ හැකි නමුත් හොඳම ක්‍රමය වන්නේ ග්‍රේඩ්ල් පරායත්තතා එකතු කිරීමයි.


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

5

පියවර 1: දැන් app folderඔබ යටතේ දැකිය යුතුය libs, ඔබට එය නොපෙනේ නම් එය සාදන්න .

පියවර 2:, Drag & Drop the .jar file hereඔබට විමසුමක් ලැබෙනු ඇත "This file does not belong to the project", OKබොත්තම ක්ලික් කරන්න .

පියවර 3: දැන් ඔබ ලිබ්ස් ෆෝල්ඩරය යටතේ ඇති භාජන ගොනුව දැකිය යුතුය, භාජන ගොනුව මත දකුණු ක්ලික් කර තෝරන්න"Add as library", Click OK for prompt "Create Library"

පියවර 4: දැන් මෙම භාජනය එකතු කර ඇත.

රූප විස්තරය මෙහි ඇතුළත් කරන්න


4

ෆෝල්ඩර ලිබ්ස් සාදන්න. ඔබගේ .jar ගොනුව එක් කරන්න. එය මත දකුණු ක්ලික් කරන්න, එවිට ඔබට යැපුම් භාජනයක් යැපීමක් ලෙස පෙනෙනු ඇත. එය මත ක්ලික් කරන්න. ඔබ කළ යුත්තේ එයයි. ඔබගේ build.gradle ගොනුවට එකතු කරන ලද පරායත්තයන් ඔබට සොයාගත හැකිය.


4

1) Project / app / src ෆෝල්ඩරය තුළ 'your_libs' ෆෝල්ඩරයක් සාදන්න.

2) ඔබේ භාජන ගොනුව මෙම 'your_libs' ෆෝල්ඩරයට පිටපත් කරන්න

3) ඇන්ඩ්‍රොයිඩ් ස්ටුඩියෝ හි, ගොනුව -> ව්‍යාපෘති ව්‍යුහය -> යැපීම් -> එකතු කරන්න -> ගොනු යැපීම වෙත ගොස් ඔබේ භාජන ගොනුව වෙත සංචාලනය කරන්න, එය 'src / your_libs' යටතේ විය යුතුය.

3) ඔබේ භාජන ගොනුව තෝරා 'හරි' ක්ලික් කරන්න

එවිට ඔබට ඔබේ build.gradle හි මේ ආකාරයෙන් දැකිය හැකිය: ගොනු සම්පාදනය කරන්න ('src / your_libs / your.jar')


4

ඇන්ඩ්‍රොයිඩ් ස්ටුඩියෝ හි 1.1.0. පියවරයන් අනුගමනය කිරීමෙන් මම මෙම ප්‍රශ්නය විසඳා ගත්තෙමි:

1: භාජන ගොනුව ලිබ්ස් නාමාවලියට දමන්න. (සෙවුමේ)

2: මොඩියුල සැකසුම් විවෘත කරන්න, යැපීම් වෙත යන්න, වම්-පහළ කෙළවරේ ප්ලස් බොත්තමක් ඇත. ප්ලස් බොත්තම ක්ලික් කර "ගොනු යැපීම" තෝරන්න .ඔබට ජරා ගොනුව දැකිය හැකිය. එය තෝරන්න, එය විසඳනු ලැබේ.


4

මම මෙහි සියලු පිළිතුරු කියවා ඇති අතර ඒවා සියල්ලම ඇන්ඩ්‍රොයිඩ් ස්ටුඩියෝ හි පැරණි අනුවාදයන් ආවරණය කරන බව පෙනේ!

ඇන්ඩ්‍රොයිඩ් ස්ටුඩියෝ 2.2.3 සමඟ නිර්මාණය කරන ලද ව්‍යාපෘතියක් සමඟ මට අවශ්‍ය වූයේ libsඩිරෙක්ටරියක් යටතේ යapp මගේ භාජනය එහි තැබීමයි. මම එය කළේ මගේ ගොනු කළමනාකරු සමඟ, ඇන්ඩ්‍රොයිඩ් ස්ටුඩියෝ හි කිසිවක් ක්ලික් කිරීමට හෝ සංස්කරණය කිරීමට අවශ්‍ය නැත.

එය ක්‍රියාත්මක වන්නේ ඇයි? පුස්තකාල සහ යැපීම් ගොඩනැගීම / සංස්කරණය කිරීම විවෘත කරන්න, එවිට ඔබට පෙනෙනු ඇත:

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

3

මැක් ඕඑස් එක්ස් හි:

  1. භාජනයක් පුස්තකාලයක් ලෙස එක් කරන්න (බඳුන ලිබ් වෙත ඇදගෙන යන්න, දකුණු ක්ලික් කරන්න lib ලෙස එකතු කරන්න)

  2. වෙත සම්පාදක ප්‍රකාශය එක් කරන්න build.grade

  3. ස්ථාපනය කරන්න gradle v1.6(හෝම්බ rew භාවිතා කරන්න )

    • බීර ස්ථාපනය කරන්න
    • gradle -v
    • v1.6 නොවේ නම්, හෝම්බ rew යාවත්කාලීන කරන්න
  4. gradle clean (ඇන්ඩ්‍රොයිඩ් නැවත ගොඩනඟා නැත)

මේක මාව එළියට දැම්මා.


3

කලින් පෙන්වා දුන් බොහෝ අය මෙන් ඔබ එකතු කළ යුතුය

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

ඔබගේ build.gradle ගොනුවට.

කෙසේ වෙතත් මට ඇන්ඩ්‍රොයිඩ් ස්ටුඩියෝ හි සූර්යග්‍රහණයෙන් සංක්‍රමණය වූ ව්‍යාපෘතියක් ඇති අතර මේ අවස්ථාවේ දී “ලිබ්ස්” ෆෝල්ඩරය “ලිබ්” ලෙස නම් කර ඇත.


3
  1. එකතු libsමට්ටමින් ෆෝල්ඩරයapp .
  2. jarsමෙම ව්‍යාපෘතියේ ඇති සියල්ල එකතු කරන ලදි.
  3. ඊළඟට, libsෆෝල්ඩරයේ ඇති සියලුම භාජන තෝරන්න,
  4. තෝරාගත් අයිතම මත දකුණු ක්ලික් කර කියන්න add library
  5. එවිට ඔබට ව්‍යාපෘති ගවේෂකය තුළම භාජන පුළුල් කිරීමේ විකල්පය සොයාගත හැකිය.

මම නිරීක්ෂණය CTRL+ ALT+ SHIFT+ S> පරායත්තයන් "ලෙස දැනටමත් ප්රවේශය විය -> ව්යාපෘතිය ව්යුහය - -> යෙදුම-මොඩියුලය (dir: 'libs', include: '*.jar')යටතේ compile-option, මුලින් ඒ සඳහා ඉහත සඳහන් පියවර අනුව භාජනයක් ගේ එකතු පසු. build.gradleනව එකතු සඳහා ඇතුළත් කිරීම් විය භාජන, ම.


3

දී ඇන්ඩ්රොයිඩ් ශබ්දාගාර 2.1 මම මේ මාර්ගය අනුගමනය,

Goto app -> src-> main -> වත්කම් ෆෝල්ඩරය (ලබා ගත නොහැකි නම් එය සාදන්න) -> ඔබේ JAR ගොනු දමන්න

රූප විස්තරය මෙහි ඇතුළත් කරන්න

ඔබගේ build.gradle හි මේ ආකාරයට යැපීම එක් කරන්න,

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')

දැන් සමමුහුර්ත කරන්න. දැන් ඔබේ JAR ගොනු භාවිතා කිරීමට සූදානම්.


ඔබ ලිබ්ස් නාමාවලිය භාවිතා නොකරන්නේ ඇයි?
ඩෙනී අර්ඩිනෙව්

RErdeniErdyneev භාජන ගොනු ගබඩා කිරීම සඳහා මම තවත් ප්‍රවේශයක් ලබා දෙමි. ඇයි මම වත්කම් පාවිච්චි නොකරන්නේ? මගේ ප්‍රවේශයේ කිසියම් ගැටළුවක් තිබේද? මම වැරදියි නම් වැරදි නිවැරදි කිරීමට මම සූදානම්
රංජිත් කුමාර්

3

නවතම ඇන්ඩ්‍රොයිඩ් 1.0.2 සඳහා පහත දැක්වෙන්නේ ඔබේ build.gradle ගොනුවේ ය

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

ඔබේ ලිබ්ස් ෆෝල්ඩරයට පුස්තකාල බඳුන එක් කරන්න -> පුස්තකාලය මත දකුණු ක්ලික් කරන්න -> පුස්තකාලයක් ලෙස එක් කරන්න ක්ලික් කරන්න -> එය ව්‍යාපෘතිය සඳහා එය එකතු කිරීමට ඔබෙන් ඉල්ලා සිටී -> ඔබේ ව්‍යාපෘතිය තෝරන්න-> හරි ක්ලික් කරන්න පහත පේළිය ස්වයංක්‍රීයව ගොඩනැගීමට එකතු වේ .gradle

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

ඒක මට කළා. තවත් කිසිවක් අවශ්‍ය නොවීය. මම මෙය ඇන්ඩ්‍රොයිඩ් ජලධර සඳහා ඇන්ඩ්‍රොයිඩ් සඳහා තවත් තෙවන පාර්ශවීය පුස්තකාලයක් සඳහා පෙන්වා ඇත.


2

මගේ පිළිතුර මූලික වශයෙන් ඉහත දක්වා ඇති නිවැරදි නමුත් අසම්පූර්ණ පිළිතුරු කිහිපයක් රැස් කිරීමයි.

  1. Build.gradle විවෘත කරන්න
  2. පහත සඳහන් දෑ එකතු කරන්න:

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

    මෙය පරායත්තතා එකතු කිරීමේ විවිධ ක්‍රම දෙකකට සහාය වීමට ඉඩ සලසයි. මෙම compile fileTree(dir: 'libs', include: ['*.jar'])(@Binod සඳහන් පරිදි) යම් භාජනයක් සඳහා ෆෝල්ඩරය libs යටතේ බැලීමට සම්පාදකවරයා කියයි. අපගේ යෙදුමට භාවිතා කිරීමට අවශ්‍ය භාජන පැකේජ අඩංගු 'ලිබ්ස්' වැනි ෆෝල්ඩරයක් නිර්මාණය කිරීම හොඳ පුරුද්දකි.

නමුත් මෙය මාවන්ගේ යැපීම සඳහා සහය ලබා දෙනු ඇත. සම්පාදනය'com.google.code.gson:gson:2.3' (an සනරී විසින් සඳහන් කළ පරිදි) එය අපගේ / ලිබ්ස් "දේශීය නිධිය" තුළ නොව මධ්‍යම දුරස්ථ ගබඩාවක ඇති පරායත්තයන් එක් කිරීමට තවත් නිර්දේශිත ක්‍රමයකි. එය මූලික වශයෙන් එම පැකේජයේ අනුවාදය සෙවීම සඳහා ශ්‍රේණියට පවසන අතර ව්‍යාපෘතිය සම්පාදනය කිරීමේදී එය සලකා බලන ලෙස එය සම්පාදකයාට පවසයි (එය පන්තියේ මාවතේ තිබීම)

PS: මම දෙකම පාවිච්චි කරනවා

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.