Langsung ke konten utama

Postingan

Menampilkan postingan dengan label java

Gradle: Implementation VS API

Sejak akhir tahun 2018, fungsi compile pada Gradle dapat digantikan dengan ` api ` dan ` implementation `. Apa bedanya? Untuk project modular, kedua kata kunci ini berguna dalam menentukan apa fungsi/class dari sebuah library/module bisa digunakan di anak module atau dependency-nya. Contoh: ``` [module A] <- [library X]     |     v [module B] ``` Jika `library x` dimasukkan dengan `api`, `library x` dapat digunakan oleh `module B`. Sebaliknya, dengan `implementation`, `library x` tidak dapat dipanggil di `module B`. Note: `Module B` bisa sebagai module atau project lain yang membutuhkan `module A`.