Saya menggunakan AndroidStudio dan saya memiliki proyek ini seperti yang ditunjukkan:
Apa yang ada di dalam lingkaran biru adalah myLib. myLib juga perlu menggunakan lib eksternal yang ada di dalam lingkaran merah, dan paket apache (lingkaran hijau).
Jadi saya ingin membuat semua ini menjadi satu .jar, jadi saya bisa menggunakannya di proyek lain.
Panduan langkah demi langkah akan sangat dihargai, saya seorang pemula di dunia pengembang.
Terima kasih!
java
android
jar
android-studio
dum4ll3.dll
sumber
sumber
Jawaban:
Buka build.gradle untuk proyek perpustakaan
Tulis dua tugas di build.gradle - deleteJar dan createJar dan tambahkan aturan createJar.dependsOn (deleteJar, build)
Kode dari atas:
Perluas panel gradle dari kanan dan buka semua tugas di bawah perpustakaan Anda-> lainnya. Anda akan melihat dua tugas baru di sana - createJar dan deleteJar
Klik dua kali pada createJar
Setelah tugas berhasil dijalankan, dapatkan jar yang Anda buat dari jalur yang disebutkan dalam tugas createJar yaitu libs / xxxx.jar
salin jar yang baru dibuat ke dalam folder lib proyek yang Anda butuhkan -> klik kanan -> pilih "tambahkan sebagai perpustakaan"
sumber
release
. Saya punyadebug
dandefault
, tapi tidak adarelease
folder. Versi plugin apa yang Anda gunakan? Tahukah Anda jika ini didokumentasikan di mana saja?release
folder.Jika Anda menyiapkan kode sebagai modul Java biasa di Gradle, maka sangat mudah untuk meminta Gradle memberi Anda file jar dengan isinya. File jar itu hanya akan memiliki kode Anda, bukan pustaka Apache lain yang bergantung padanya. Saya merekomendasikan untuk mendistribusikannya dengan cara ini; Agak aneh untuk menggabungkan dependensi di dalam perpustakaan Anda, dan lebih normal bagi pengguna perpustakaan tersebut untuk menyertakan dependensi tersebut sendiri (karena jika tidak, ada benturan dari proyek-proyek tersebut yang sudah menautkan salinan perpustakaan, mungkin dari versi yang berbeda ). Terlebih lagi, Anda menghindari potensi masalah lisensi seputar pendistribusian ulang kode orang lain jika Anda akan menerbitkan perpustakaan Anda.
Ambil kode yang juga perlu dikompilasi ke jar, dan pindahkan ke modul Java biasa yang terpisah di Android Studio:
Mudah-mudahan proyek Anda harus berjalan normal sekarang. Setelah Anda melakukan build, file jar untuk library Java Anda akan ditempatkan di direktori build / libs di direktori modul Anda. Jika Anda ingin membuat file jar secara manual, Anda dapat menjalankan tugas file build jar dari jendela Gradle:
sumber
Di Android Studio IDE, akses " Run Anything bar " dengan:
CTRL+ CTRL+
gradle CreateFullJarRelease
+ENTERSetelah itu Anda akan menemukan artefak Anda di folder ini di proyek Anda
Build > Intermediates > Full_jar > Release > CreateFullJarRelease > full.jar
ATAU
Gradle sudah memiliki
Task
untuk itu, di menu samping gradle, di bawahother
folder.Kemudian gulir ke bawah
createFullJarRelease
dan klik.Setelah itu Anda akan menemukan artefak Anda di folder ini di proyek Anda
Build > Intermediates > Full_jar > Release > CreateFullJarRelease > full.jar
sumber
build\intermediates\intermediate-jars\release
classes.jar
,,full.jar
danres.jar
. Haruskah saya mengimpor semua file jar kapan pun saya ingin menggunakannya?Cukup tambahkan ini ke build.gradle modul java Anda. Ini akan mencakup perpustakaan dependen dalam arsip.
Ini akan menghasilkan file [module_name] / build / libs / [module_name] .jar.
sumber
File .jar akan otomatis dibuat ketika Anda mengkompilasi / menjalankan aplikasi Anda.
Anda dapat menemukan file class.jar Anda dari root_folder / app / build / intermediates / bundles / debug
sumber
Buka tab Gradle di Android Studio, lalu pilih proyek perpustakaan.
Lalu pergi ke Tasks
Lalu pergi ke Lainnya
Klik dua kali pada bundleReleaseaar
Anda dapat menemukan
.aar
file Anda di bawahyour_module/build/outputs/aar/your-release.aar
sumber
.jar
tidak.aar
cara saya menemukan adalah untuk menemukan keluaran kompilator proyek (struktur proyek> proyek). kemudian temukan folder yang sesuai dari modul yang ingin Anda ubah menjadi jar, kompres dengan zip dan ubah ekstensi keluaran dari zip ke jar.
sumber
sumber
Jika Anda menjalankan tugas gradle dari AndroidStudio [Lainnya]
atau melalui terminal
maka Anda akan dapat menemukannya
.aar
di.aar
File (Android Library) terdiri dari file.jar
(Java Library) dan sumber daya Android tambahan..aar
file adalah file zip dengan ekstensi aar itu sebabnya Anda dapat mengganti.aar
dengan.zip
atau runsumber