Anda menghasilkannya sekali, dan lagi ketika Anda ingin mengubah versi Gradle yang Anda gunakan dalam proyek. Tidak perlu menghasilkan begitu sering. Ini dokumennya. Cukup tambahkan wrapper
tugas ke build.gradle
file dan jalankan tugas ini untuk mendapatkan struktur pembungkus.
Perlu diingat bahwa Anda perlu menginstal Gradle untuk menghasilkan pembungkus. Alat hebat untuk mengelola artefak g-ekosistem adalah SDKMAN! . Untuk menghasilkan pembungkus gradle, tambahkan potongan kode berikut ke build.gradle
file:
task wrapper(type: Wrapper) {
gradleVersion = '2.0' //version required
}
dan lari:
gradle wrapper
tugas. Tambahkan file yang dihasilkan ke SCM (misalnya git) dan mulai sekarang semua pengembang akan memiliki versi Gradle yang sama saat menggunakan Gradle Wrapper.
Dengan Gradle 2.4 (atau lebih tinggi) Anda dapat mengatur pembungkus tanpa menambahkan tugas khusus:
gradle wrapper --gradle-version 2.3
atau
gradle wrapper --gradle-distribution-url https://myEnterpriseRepository:7070/gradle/distributions/gradle-2.3-bin.zip
Semua detail dapat ditemukan di sini
Dari 3.1
--distribution-type
opsi Gradle juga bisa digunakan. Opsinya adalah biner dan semua dan bin . semua tambahan berisi kode sumber dan dokumentasi. semuanya juga lebih baik ketika IDE digunakan, jadi editor bekerja lebih baik. Kekurangannya adalah build mungkin bertahan lebih lama (perlu mengunduh lebih banyak data, tidak berguna di server CI) dan itu akan memakan lebih banyak ruang.
Ini adalah file Gradle Wrapper. Anda perlu membuatnya sekali (untuk versi tertentu) dan menambahkan ke kontrol versi. Jika Anda perlu mengubah versi Gradle Wrapper, ubah versi di build.gradle
lihat (1.) dan buat ulang file.
Berikan contoh detail. File tersebut dapat memiliki beberapa tujuan: proyek multi-modul, pemisahan tanggung jawab, skrip yang sedikit dimodifikasi, dll.
settings.gradle
lebih bertanggung jawab atas struktur proyek (modul, nama, dll), sementara, gradle.properties
digunakan untuk detail eksternal proyek dan Gradle (versi, argumen baris perintah -XX
, properti, dll.)
build.gradle
skrip besar menjadi beberapa skrip pendek, dan dikhususkan untuk satu skrip tujuan tertentu. Karena Anda dapat menempatkan skrip yang berada di bawah direktori grad kebuild.gradle
file utama , lihat: github.com/Netflix/eureka/blob/master/build.gradle . Di mana Anda meletakkan modul - modul semacam itu adalah pilihan Anda. Itu semua secara umum. Jika Anda puas dengan jawabannya, harap terima jawabannya :)--distribution-type
, misalnya,gradle wrapper --gradle-version 4.3.1 --distribution-type ALL
Menghasilkan Gradle Wrapper
Proyek membangun gradle
Kemudian pada menjalankan baris perintah
Jika Anda kehilangan gradle di sistem, instal atau yang di atas tidak akan berfungsi. Pada Mac, yang terbaik adalah menginstal melalui Homebrew.
Setelah Anda berhasil menjalankan tugas pembungkus dan dihasilkan
gradlew
, jangan gunakan gradasi sistem Anda. Ini akan menghemat banyak sakit kepala.Bagaimana dengan plugin gradle yang terlihat di atas?
Anda harus mengatur versi menjadi yang terbaru dan Anda dapat memeriksa halaman alat dan mengedit versi yang sesuai.
Lihat apa yang dihasilkan Android Studio
Penambahan gradle dan Android Studio terbaru telah mengubah tata letak proyek secara dramatis. Jika Anda memiliki proyek yang lebih lama, saya sangat merekomendasikan membuat yang bersih dengan Android Studio terbaru dan melihat apa yang dianggap Google sebagai proyek standar.
Android Studio memiliki fasilitas untuk mengimpor proyek lama yang juga dapat membantu.
sumber
gradleVersion = '2.2'
ditaskWrapper
dapat menggunakan versi apa pun yang saya inginkan untuk menghasilkan bungkus, benar? Tidak harus menjadi gradle versi terbaru?Pada Gradle 2.4, Anda dapat menggunakan
gradle wrapper --gradle-version X.X
untuk mengkonfigurasi versi spesifik pembungkus Gradle, tanpa menambahkan tugas apa pun kebuild.gradle
file Anda . Lain kali Anda menggunakan pembungkus, itu akan mengunduh distribusi Gradle yang sesuai untuk dicocokkan.sumber
Jika Anda ingin mengunduh gradle dengan sumber dan dokumen, url distribusi default yang dikonfigurasi dalam gradle-wrapper.properites tidak akan memuaskan kebutuhan Anda. Ini adalah https://services.gradle.org/distributions/gradle-2.10-bin.zip , tidak https://services.gradle.org/distributions/gradle-2.10-all.zip . Url lengkap ini disarankan oleh IDE seperti Android Studio.Jika Anda ingin mengunduh gradle penuh, Anda dapat mengonfigurasi tugas pembungkus seperti ini :
sumber
Ini adalah perintah yang digunakan untuk memberi tahu Gradle untuk memutakhirkan pembungkus sehingga akan mengambil versi distribusi perpustakaan yang menyertakan kode sumber:
Menentukan tipe distribusi dengan "semua" akan memastikan Gradle mengunduh file sumber untuk digunakan oleh lingkungan pengembangan Anda.
Pro :
Cons :
Berikan komentar atau berikan jawaban lain jika Anda mengetahui opsi baris perintah untuk memberi tahu Gradle agar tidak mengunduh sumber di server build.
sumber
Anda akan membuatnya sekali, tetapi perbarui jika Anda memerlukan fitur baru atau sesuatu dari sebuah plugin yang pada gilirannya membutuhkan versi gradle yang lebih baru.
Cara termudah untuk memperbarui: pada Gradle 2.2 Anda bisa mengunduh dan mengekstrak distribusi Gradle lengkap atau biner , dan jalankan:
Tidak perlu mendefinisikan tugas, meskipun Anda mungkin perlu beberapa jenis
build.gradle
file.Ini akan memperbarui atau membuat
gradlew
dangradlew.bat
pembungkus sertagradle/wrapper/gradle-wrapper.properties
dangradle-wrapper.jar
untuk menyediakan versi gradle saat ini, dibungkus.Itu semua adalah bagian dari pembungkus.
Beberapa
build.gradle
file merujuk file lain atau file dalam subdirektori yang merupakan sub proyek atau modul. Itu menjadi sedikit rumit, tetapi jika Anda memiliki satu proyek pada dasarnya Anda memerlukan satu file.settings.gradle
menangani proyek, modul dan jenis nama dan pengaturan lainnya,gradle.properties
mengkonfigurasi variabel yang dapat digunakan kembali untuk file gradle Anda jika Anda suka dan Anda merasa mereka akan lebih jelas seperti itu.sumber
Karena tugas bawaan gradle tidak digunakan dalam 4.8, coba di bawah ini
dan lari
sumber