Mendownload paket Java menggunakan akses repositori langsung untuk paket gratis

Di paket gratis, paket Assured Open Source Software dihosting di repositori Artifact Registry yang dikelola Google.

Halaman ini menjelaskan cara terhubung ke repositori Artifact Registry untuk Assured OSS guna mengakses dan mendownload paket Java secara langsung.

Dokumen ini hanya berlaku untuk paket gratis. Untuk paket premium, lihat Mendownload paket Java menggunakan akses repositori langsung.

Sebelum memulai

  1. Minta administrator untuk memberi Anda peran IAM Admin Kunci Akun Layanan (roles/iam.serviceAccountKeyAdmin) di organisasi Anda. Anda memerlukan izin ini untuk mendapatkan string kunci akun layanan yang dienkode base64. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.

  2. Konfigurasi Assured OSS. Untuk paket gratis, kirimkan formulir pengaktifan pelanggan untuk mengaktifkan akses ke Assured OSS.

  3. Validasi konektivitas ke Assured OSS untuk akun layanan yang diminta.

  4. Aktifkan Artifact Registry API untuk parent Google Cloud project akun layanan yang digunakan untuk mengakses Assured OSS.

  5. Instal Google Cloud CLI versi terbaru. Jika Anda telah menginstal Google Cloud CLI sebelumnya, pastikan Anda memiliki versi terbaru dengan menjalankan perintah ini:

    gcloud components update
    

Menyiapkan autentikasi

Artifact Registry mendukung metode autentikasi berikut:

  • Autentikasi dengan credential helper
  • Autentikasi dengan sandi

Bagian berikut menjelaskan cara menyiapkan metode autentikasi ini.

Melakukan autentikasi dengan credential helper

Artifact Registry menyediakan wagon Maven dan plugin Gradle untuk digunakan sebagai credential helper. Opsi ini memberikan fleksibilitas paling tinggi.

Untuk menyiapkan Kredensial Default Aplikasi, lihat Menyiapkan autentikasi.

Menyiapkan credential helper

Buat perubahan berikut berdasarkan alat build untuk menyiapkan autentikasi menggunakan credential helper:

Maven

<project>
  <build>
    <extensions>
      <extension>
        <groupId>com.google.cloud.artifactregistry</groupId>
        <artifactId>artifactregistry-maven-wagon</artifactId>
        <version>2.2.0</version>
      </extension>
    </extensions>
  </build>
</project>

Gradle

plugins {
  id "com.google.cloud.artifactregistry.gradle-plugin" version "2.2.0"
}

Melakukan autentikasi menggunakan sandi

Lakukan autentikasi menggunakan sandi saat aplikasi Java Anda memerlukan autentikasi dengan nama pengguna dan sandi tertentu. Ubah setelan berdasarkan alat build Anda:

Maven

Tambahkan setelan autentikasi berikut di bagian settings file ~/.m2/settings.xml. Jika file belum ada, buat file tersebut. Untuk mengetahui informasi selengkapnya, lihat referensi Setelan Maven.

<settings>
  <servers>
    <server>
      <id>artifact-registry</id>
      <configuration>
        <httpConfiguration>
          <get>
            <usePreemptive>true</usePreemptive>
          </get>
          <head>
            <usePreemptive>true</usePreemptive>
          </head>
          <put>
            <params>
              <property>
                <name>http.protocol.expect-continue</name>
                <value>false</value>
              </property>
            </params>
          </put>
        </httpConfiguration>
      </configuration>
      <username>_json_key_base64</username>
      <password>KEY</password>
    </server>
  </servers>
</settings>

Ganti KEY dengan encoding base64 dari seluruh file kunci JSON akun layanan. Untuk melakukannya, jalankan perintah berikut:

cat KEY_FILE_LOCATION  | base64

Dengan KEY_FILE_LOCATION adalah lokasi file kunci JSON akun layanan.

Gradle

Tambahkan baris berikut ke file ~/.gradle/gradle.properties agar kunci tidak terlihat dalam build atau repositori kontrol sumber Anda.

artifactRegistryMavenSecret = KEY

Ganti KEY dengan kunci pribadi dari file kunci JSON akun layanan Anda. Untuk json_key_base64, artifactRegistryMavenSecret berisi sandi terenkripsi base64. Misalnya, base64 -w 0 KEY.

Dalam file build.gradle, tentukan setelan repositori menggunakan contoh berikut:

repositories {
  maven {
    url "artifactregistry://us-maven.pkg.dev/cloud-aoss/cloud-aoss-java"
    credentials {
      username = "_json_key_base64"
      password = "$artifactRegistryMavenSecret"
    }
    authentication {
      basic(BasicAuthentication)
    }
  }
}

Memperbarui file konfigurasi project untuk mengarah ke repositori

Maven

Tambahkan setelan berikut ke bagian yang sesuai dalam file pom.xml untuk project Maven Anda. Jangan mengganti setelan autentikasi.

<project>
  <repositories>
    <repository>
      <id>artifact-registry</id>
      <url>artifactregistry://us-maven.pkg.dev/cloud-aoss/cloud-aoss-java</url>
      <releases>
        <enabled>true</enabled>
      </releases>
      <snapshots>
        <enabled>false</enabled>
      </snapshots>
    </repository>
  </repositories>
</project>

Lihat referensi POM Maven untuk mengetahui detail tentang struktur file.

Gradle

Tentukan setelan repositori berikut dalam file build.gradle Anda. Jangan mengganti setelan autentikasi.

repositories {
  maven {
  url "artifactregistry://us-maven.pkg.dev/cloud-aoss/cloud-aoss-java"
  }
}

Memperbarui file konfigurasi project untuk menambahkan dependensi

Untuk mendownload artefak sebagai bagian dari build Anda, artefak harus dideklarasikan sebagai dependensi.

Maven

Deklarasikan paket yang ingin Anda download dalam file pom.xml untuk project Maven Anda.

<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-api</artifactId>
    <version>2.17.1</version>
</dependency>

Gradle

Deklarasikan paket yang ingin Anda download dalam file build.gradle Anda.

dependencies {
    compile group: 'org.apache.logging.log4j', name: 'log4j-api', version: '2.17.1'
}

Mengakses paket Java yang tidak tersedia di Assured OSS

Anda dapat mengakses paket yang tidak tersedia di repositori Artifact Registry untuk Assured OSS.

Assured OSS telah dikonfigurasi sebelumnya dengan Assured OSS sebagai repositori pilihan dan repositori publik kanonis seperti Maven Central atau PyPI, sebagai repositori sekunder. Untuk menggunakan fitur (Pratinjau), arahkan ke URL berikut:

https://us-maven.pkg.dev/cloud-aoss/java

Mencantumkan semua paket Java yang tersedia di Assured OSS

Untuk menggunakan API guna mendapatkan daftar semua paket Java yang tersedia di repositori Artifact Registry, lihat Mencantumkan semua paket Java yang tersedia di Assured OSS.

Langkah berikutnya