Pertanyaan Android Studio: Tambahkan guci sebagai pustaka?


Saya mencoba menggunakan Android Studio baru tetapi sepertinya saya tidak bisa membuatnya berfungsi dengan benar.

Saya menggunakan Gson perpustakaan untuk cerita bersambung / deserialize JSON-objek. Tapi entah bagaimana perpustakaan tidak termasuk dalam membangun.

Saya telah membuat proyek baru hanya dengan Aktifitas utama. Disalin gson-2.2.3.jar di folder / libs dan menambahkannya sebagai ketergantungan perpustakaan (klik kanan-> Tambah sebagai pustaka). Ini termasuk toples di studio android sehingga dapat dirujuk dari file sumber.

Ketika saya mencoba menjalankan proyek itu tidak dapat dikompilasi jadi saya menambahkan:

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

ke dependensi dalam file de .gradle. Setelah itu mengkompilasi dengan benar tetapi ketika menjalankan aplikasi saya mendapatkan ClassDefNotFoundException.

Apakah ada yang tahu apa yang saya lakukan salah?


915
2018-05-17 11:41


asal


Jawaban:


Saya telah berjuang dengan hal yang sama selama berjam-jam, mencoba mendapatkan guci Gson untuk bekerja tidak kurang. Saya akhirnya memecahkannya - ini adalah langkah-langkah yang saya ambil:

  1. Masukkan botol Gson (dalam kasus saya, gson-2.2.4.jar) ke dalam libs map
  2. Klik kanan dan tekan 'Tambahkan sebagai pustaka'
  3. Memastikan bahwa compile files('libs/gson-2.2.4.jar') ada di Anda build.gradle file (atau compile fileTree(dir: 'libs', include: '*.jar') jika Anda menggunakan banyak file jar)

    Edit: Gunakan implementation files('libs/gson-2.2.4.jar') (atau implementation fileTree(dir: 'libs', include: '*.jar')) di Android Studio 3.0+

  4. Lakukan pembangunan bersih (Anda mungkin dapat melakukannya dengan baik di Android Studio, tetapi untuk memastikan saya menavigasi di terminal ke folder akar aplikasi saya dan mengetik gradlew clean. Saya menggunakan Mac OS X, perintahnya mungkin berbeda pada sistem Anda

Setelah saya melakukan empat di atas, itu mulai bekerja dengan baik. Saya pikir langkah 'Tambahkan sebagai perpustakaan' adalah langkah yang sebelumnya saya lewatkan, dan itu tidak berhasil sampai saya membersihkannya juga.

[Edit - menambahkan build.gradle langkah yang juga diperlukan seperti yang ditunjukkan orang lain]


1468
2018-05-18 20:08



Berikut adalah petunjuk untuk menambahkan file jar lokal sebagai pustaka ke modul:

  1. Buat folder 'libs' di tingkat atas direktori modul (direktori yang sama yang berisi direktori 'src')

  2. Dalam build.gradle file tambahkan yang berikut ini sehingga penutupan dependensi Anda memiliki:

    dependencies {
        // ... other dependencies
        compile files('libs/<your jar's name here>')
    }
    
  3. Android Studio seharusnya sudah menyiapkan pembungkus gradlew. Dari baris perintah, arahkan ke tingkat teratas proyek Anda (direktori yang memiliki gradlew mengajukan).

    Menjalankan ./gradlew assemble. Ini harus mengkompilasi proyek dengan perpustakaan. Anda mungkin perlu memperbaiki kesalahan dalam file build.gradle Anda seperlunya.

  4. Agar Android Studio mengenali file jar lokal sebagai pustaka untuk dukungan saat mengkodekan dalam IDE, Anda perlu melakukan beberapa langkah lagi:

    4.1. Klik kanan pada modul di panel sebelah kiri dan pilih Open Library Settings.

    4.2. Di panel kiri dialog, pilih Libraries.

    4.3. Klik + tanda di atas panel kedua dari kiri -> Java

    Menu

    4.4. Pilih toples lokal Anda dan tambahkan ke proyek.

  5. Anda mungkin perlu menjalankan yang di atas ./gradlew perintah sekali lagi


257
2017-08-19 19:50



Di dalam proyek klik kanan 

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

Ikuti screenshot di bawah ini:

1:

Step 1

2:

enter image description here

3:

enter image description here

Anda akan melihat ini:

enter image description here


105
2017-08-19 05:50



IIRC, cukup menggunakan "Tambahkan sebagai perpustakaan" tidak cukup untuk mengkompilasi dengan proyek.

Memeriksa Bantuan Intellij tentang menambahkan pustaka ke proyek

Bagian yang paling menarik bagi Anda adalah:

(Di File > Project Structure) Buka pengaturan modul dan pilih tab Dependensi.

Pada tab Dependensi, klik tambahkan dan pilih Pustaka.

Dalam dialog Pilih Perpustakaan, pilih satu atau lebih pustaka dan klik Tambahkan yang Dipilih.

Jika pustaka tidak muncul di dialog, tambahkan pustaka di setelan Pustaka, tepat di bawah Modul.

Anda tidak perlu menambahkan compile files() lagi, dan perpustakaan harus benar ditambahkan ke proyek Anda.


45
2018-05-17 13:13



Di Android Stuido, saya suka menggunakan Gradle untuk mengelola Gson lib.

Tambahkan di bawah dependensi dalam file build.gradle Anda.

repositories {mavenCentral()}

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

Semuanya baik-baik saja.

Anda juga dapat melihat posting ini. Cara terbaik untuk mengintegrasikan perpustakaan pihak ketiga di studio Android


44
2017-09-15 23:25



Semua solusi ini sudah ketinggalan zaman. Sangat mudah sekarang di Android Studio:

File> Modul Baru ...

Layar berikutnya terlihat aneh, seperti Anda memilih beberapa widget atau sesuatu tetapi tetap menggunakannya pada gambar pertama dan di bawah gulir dan temukan "Paket Impor JAR atau .AAR"

Lalu ambil Project Structure dari menu File. Pilih app dari jendela yang terbuka, lalu pilih dependencies ,lalu tekan green plus button ,memilih module dependency kemudian pilih modul yang Anda impor lalu tekan OK


38
2018-02-21 04:20



'mengkompilasi file ...' dulu bekerja untukku, tapi tidak lagi. setelah banyak rasa sakit, saya menemukan bahwa menggunakan ini malah berhasil:

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

Saya tidak tahu mengapa itu membuat perbedaan, tetapi, setidaknya hal sialan itu bekerja sekarang.


33
2017-10-11 20:49



Langkah mudah untuk menambahkan pustaka eksternal di Android Studio

  1. Jika Anda masuk Android Lihat di penjelajah proyek, ubah menjadi Proyek lihat seperti di bawah ini

enter image description here

  1. Klik kanan modul yang diinginkan di mana Anda ingin menambahkan pustaka eksternal, lalu pilih Baru> Directroy dan beri nama sebagai   'libs'
  2. Sekarang salin blah_blah.jar ke dalam 'libsfolder
  3. Klik kanan blah_blah.jar, Kemudian pilih 'Tambahkan sebagai Pustaka ..'. Ini akan secara otomatis menambahkan dan masuk build.gradle sebagai menyusun   file ('libs / blah_blah.jar') dan menyinkronkan gradle. Dan Anda selesai

Tolong dicatat : Jika Anda menggunakan pustaka pihak ke-3 maka lebih baik digunakan ketergantungan di mana skrip Gradle   secara otomatis mengunduh JAR dan ketergantungan JAR ketika gradle   skrip dijalankan.

Ex: kompilasi 'com.google.android.gms: play-services-ads: 9.4.0'

Baca lebih lanjut tentang Gradle Dependency Mangement


32
2017-08-26 18:48



  1. Unduh file Perpustakaan dari situs web
  2. Salin dari jendela jelajahi
  3. Tempel ke folder lib dari Project Explorer
  4. Ctrl+Alt+Bergeser+S Buka Struktur Proyek
  5. Pilih Dependensi Tab, tambahkan file dengan menggunakan +
  6. Bilah alat Menyinkronkan proyek dengan file gradle dengan menggunakan tombol

Itu memecahkan masalah saya. Coba, jika ada yang ingin lebih jelas beritahu saya.


16
2017-10-02 09:06