Mengelola paket Java

Artifact Registry mendukung paket Java yang Anda build dengan Maven dan Gradle.

Ringkasan

Untuk memahami paket Java di Artifact Registry, Anda dapat mencoba panduan memulai.

Jika Anda siap mempelajari lebih lanjut, baca informasi berikut:

  1. Buat repositori paket Java untuk paket Anda.
  2. Pelajari cara membuat repositori jarak jauh dan virtual.
  3. Baca tentang cara menggunakan repositori jarak jauh dan virtual dalam contoh penggunaan repositori ini.
  4. Berikan izin ke akun yang akan terhubung dengan repositori. Akun layanan untuk integrasi umum dengan Artifact Registry memiliki izin default untuk repositori dalam project yang sama.
  5. Konfigurasikan alat Anda:
  6. Pelajari cara mengelola paket.

Versi rilis dan snapshot Maven

Maven membedakan antara versi snapshot dan rilis dari project Maven Anda.

Snapshot

Snapshot adalah versi pra-rilis project Java. Nomor versi untuk snapshot menyertakan akhiran -SNAPSHOT di Project Object Model (POM) Anda. Misalnya, setelan ini dalam file pom.xml adalah untuk project versi 1.0 yang sedang dalam pengembangan:

<version>1.0-SNAPSHOT</version>

Saat Anda memublikasikan paket dari project ini, Maven 3 akan otomatis menambahkan stempel waktu ke nomor versi snapshot sehingga setiap versi snapshot unik. Maven 2 mendukung versi snapshot non-unik sebagai cara untuk menimpa snapshot yang ada di repositori. Pendekatan ini bermasalah untuk reproducibilitas build, itulah sebabnya Maven 3 tidak lagi mendukung snapshot yang tidak unik.

Snapshot menyediakan cara bagi Anda untuk memublikasikan versi terbaru paket pra-rilis secara iteratif tanpa menambahkan nomor versi dalam project Maven setiap kali Anda memublikasikan ke repositori. Selama pengembangan, project lain dengan dependensi pada paket tersebut kemudian dapat memperoleh snapshot terbaru versi 1.0 dari repositori.

Lihat spesifikasi urutan versi untuk mengetahui detail tentang sintaksis nomor versi Maven dan urutan pengurutan.

Rilis

Jika sudah siap merilis paket, Anda harus menghapus akhiran -SNAPSHOT dari nomor versi dalam file POM dan mengupdate project apa pun yang bergantung pada paket sehingga project tersebut menggunakan versi rilis, bukan versi snapshot.

Untuk mencantumkan semua dependensi snapshot, Anda dapat memfilter hierarki dependensi dengan perintah:

mvn dependency:tree -Dincludes=:::*-SNAPSHOT

Kebijakan versi Artifact Registry

Saat membuat repositori Maven di Artifact Registry, Anda dapat menentukan kebijakan versi Maven:

  • Tidak ada - Menyimpan paket snapshot dan rilis. Ini adalah setelan default.
  • Snapshot - Hanya menyimpan paket snapshot.
  • Rilis - Hanya menyimpan paket rilis.

Jika memilih kebijakan versi snapshot, Anda juga dapat menentukan apakah repositori mengizinkan versi snapshot yang tidak unik yang menimpa versi yang cocok di repositori. Sebaiknya gunakan versi unik karena Maven 3 tidak mendukung model versi non-unik.