Java-Pakete in Artifact Registry speichern

In dieser Kurzanleitung wird gezeigt, wie Sie ein Maven-Repository von Artifact Registry einrichten und ein Paket in dieses Repository hochladen.


Wenn Sie eine direkte Anleitung für diese Aufgabe direkt in der Konsole aufrufen möchten, klicken Sie auf Anleitung:

Anleitung


Die folgenden Abschnitte führen Sie durch dieselben Schritte wie das Klicken auf Anleitung.

Hinweis

  1. Melden Sie sich bei Ihrem Google Cloud-Konto an. Wenn Sie mit Google Cloud noch nicht vertraut sind, erstellen Sie ein Konto, um die Leistungsfähigkeit unserer Produkte in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
  2. Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.

    Zur Projektauswahl

  3. Die Abrechnung für das Cloud-Projekt muss aktiviert sein. So prüfen Sie, ob die Abrechnung für ein Projekt aktiviert ist.

  4. Artifact Registry API aktivieren.

    Aktivieren Sie die API

  5. Installieren und initialisieren Sie Google Cloud CLI.
  6. Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.

    Zur Projektauswahl

  7. Die Abrechnung für das Cloud-Projekt muss aktiviert sein. So prüfen Sie, ob die Abrechnung für ein Projekt aktiviert ist.

  8. Artifact Registry API aktivieren.

    Aktivieren Sie die API

  9. Installieren und initialisieren Sie Google Cloud CLI.

Cloud Shell starten

In dieser Kurzanleitung verwenden Sie Cloud Shell, eine Shell-Umgebung zum Verwalten von Ressourcen, die in Google Cloud gehostet werden.

In Cloud Shell sind die Google Cloud-Befehlszeile und Java vorinstalliert. Über die gcloud-Befehlszeile können Sie die primäre Befehlszeile für Google Cloud verwenden.

Cloud Shell aufrufen

  1. Rufen Sie die Google Cloud Console auf.

    Google Cloud Console

  2. Klicken Sie in der Symbolleiste der Konsole auf Cloud Shell aktivieren:

In einem Frame im unteren Teil der Console wird eine Cloud Shell-Sitzung geöffnet. Mit dieser Shell führen Sie gcloud-Befehle aus.

Package Repository für Java erstellen

Erstellen Sie das Repository für Ihre Java-Artefakte.

  1. Im Folgenden wird gezeigt, wie Sie das Repository anlegen.

Console

  1. Öffnen Sie die Seite Repositories in der Console.

    Zur Seite „Repositories“

  2. Klicken Sie auf Repository erstellen.

  3. Geben Sie quickstart-java-repo als Repository-Namen an.

  4. Wählen Sie Maven als Format aus.

  5. Wählen Sie unter Standorttyp die Option Region und dann den Standort us-central1 aus.

  6. Klicken Sie auf Erstellen.

    Das Repository wird der Repository-Liste hinzugefügt.

gcloud

  1. Führen Sie den folgenden Befehl aus, um ein neues Package Repository für Java im aktuellen Projekt quickstart-java-repo am Standort us-central1 zu erstellen.

    gcloud artifacts repositories create quickstart-java-repo --repository-format=maven \
    --location=us-central1 --description="Java package repository"
    
  2. Führen Sie den folgenden Befehl aus, um zu prüfen, ob Ihr Repository erstellt wurde:

    gcloud artifacts repositories list
    

    Weitere Informationen zu Artifact Registry-Befehlen erhalten Sie mit dem Befehl gcloud artifacts.

Maven konfigurieren

  1. Wählen Sie ein einfaches Maven-Projekt aus, das Sie verwenden möchten.

    Wenn du kein einfaches Projekt zur Verfügung hast, kannst du das Projekt Maven in 5 Minuten erstellen.

    In dieser Kurzanleitung wird davon ausgegangen, dass in Ihrem einfachen Projekt keine zusätzlichen übergeordneten oder Plug-in-Abhängigkeiten in Artifact Registry gespeichert sind. Weitere Informationen zum Konfigurieren eines Maven-Projekts mit Abhängigkeiten in Artifact Registry finden Sie unter Authentifizierung mit einem Credential Assistent.

  2. Um die gcloud-Befehle zu vereinfachen, legen Sie für das Standard-Repository den Wert quickstart-java-repo und für den Standard-Speicherort us-central1 fest. Nachdem Sie die Werte festgelegt haben, müssen Sie diese nicht mehr in gcloud-Befehlen angeben, für die ein Repository oder Speicherort erforderlich ist.

    Um das Repository festzulegen, führen Sie folgenden Befehl aus:

    gcloud config set artifacts/repository quickstart-java-repo
    

    Führen Sie den folgenden Befehl aus, um den Standort festzulegen:

    gcloud config set artifacts/location us-central1
    

    Weitere Informationen zu diesen Befehlen finden Sie in der Dokumentation zu gcloud config set.

  3. Führen Sie den folgenden Befehl aus, um die Einstellungen für das Standard-Repository quickstart-java-repo auszugeben.

    gcloud artifacts print-settings mvn
    

    Die Ausgabe des Befehls gcloud entspricht dem folgenden Snippet, wobei PROJECT Ihre Projekt-ID ist.

    <distributionManagement>
      <snapshotRepository>
        <id>artifact-registry</id>
        <url>artifactregistry://us-central1-maven.pkg.dev/PROJECT/quickstart-java-repo</url>
      </snapshotRepository>
      <repository>
        <id>artifact-registry</id>
        <url>artifactregistry://us-central1-maven.pkg.dev/PROJECT/quickstart-java-repo</url>
      </repository>
    </distributionManagement>
    
    <repositories>
      <repository>
        <id>artifact-registry</id>
        <url>artifactregistry://us-central1-maven.pkg.dev/PROJECT/quickstart-java-repo</url>
        <releases>
          <enabled>true</enabled>
        </releases>
        <snapshots>
          <enabled>true</enabled>
        </snapshots>
      </repository>
    </repositories>
    
    <build>
      <extensions>
        <extension>
          <groupId>com.google.cloud.artifactregistry</groupId>
          <artifactId>artifactregistry-maven-wagon</artifactId>
          <version>2.1.5</version>
        </extension>
      </extensions>
    </build>
    
  4. Fügen Sie die Einstellungen in die Datei pom.xml für Ihr Maven-Projekt ein. Die folgende Übersicht zeigt die relative Platzierung der einzelnen Hauptelemente. Weitere Informationen zur Struktur der Datei finden Sie in der POM-Referenz zu Maven.

    <project xmlns="http://maven.apache.org/POM/4.0.0"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
                          http://maven.apache.org/xsd/maven-4.0.0.xsd">
    
      <!-- Build Settings -->
      <build>
        ...
        <extensions>...</extensions>
      </build>
    
      <!-- Environment Settings -->
      <repositories>...</repositories>
      <distributionManagement>...</distributionManagement>
    </project>
    

Ihr Maven-Projekt kann jetzt Pakete in Ihr Repository hochladen.

Gradle konfigurieren

Erstellen Sie ein einfaches Gradle-Projekt, um ein Paket im von Ihnen erstellten Artifact Registry-Repository bereitzustellen. Wenn du keinen Gradle-Test hast, kannst du der einführenden Gradle-Anleitung folgen, um einen einfachen Gradle-Build zu erstellen.

Um die gcloud-Befehle zu vereinfachen, legen Sie für das Standard-Repository den Wert quickstart-java-repo und für den Standard-Speicherort us-central1 fest. Nachdem Sie die Werte festgelegt haben, müssen Sie diese nicht mehr in gcloud-Befehlen angeben, für die ein Repository oder Speicherort erforderlich ist.

Um das Repository festzulegen, führen Sie folgenden Befehl aus:

gcloud config set artifacts/repository quickstart-java-repo

Führen Sie den folgenden Befehl aus, um den Standort festzulegen:

gcloud config set artifacts/location us-central1

Weitere Informationen zu diesen Befehlen finden Sie in der Dokumentation zu gcloud config set.

  1. Fügen Sie Einstellungen hinzu, um das Repository mit der Datei build.gradle zu verbinden. Mit dem folgenden Befehl werden die Einstellungen ausgegeben, die für das Standard-Repository quickstart-java-repo hinzuzufügen sind.

    gcloud artifacts print-settings gradle
    

    Die Ausgabe des Befehls gcloud sieht in etwa wie im folgenden Beispiel aus, wobei PROJECT Ihre Projekt-ID ist:

    plugins {
      id "maven-publish"
      id "com.google.cloud.artifactregistry.gradle-plugin" version "2.1.5"
          }
    
    publishing {
      repositories {
        maven {
          url "artifactregistry://us-central1-maven.pkg.dev/PROJECT/quickstart-java-repo"
        }
      }
    }
    
    repositories {
      maven {
        url "artifactregistry://us-central1-maven.pkg.dev/PROJECT/quickstart-java-repo"
      }
    }
    
  2. Prüfen Sie, ob die Datei build.gradle den Abschnitt publications enthält. Falls nicht, fügen Sie ihn der Datei build.gradle hinzu.

    Der Abschnitt publications ist ein untergeordnetes Element von publishing, wie im folgenden Beispiel gezeigt:

    publishing {
      publications {
           mavenJava(MavenPublication) {
              groupId  'maven.example.id'
              from components.java
           }
      }
      repositories {
        maven {
          url "artifactregistry://us-central1-maven.pkg.dev/PROJECT/quickstart-java-repo"
        }
      }
    }
    

    Sie können die Repository-Konfiguration auch zu Ihrer init.gradle- oder settings-Datei hinzufügen. Weitere Informationen zu diesen Optionen finden Sie unter Authentifizierung einrichten.

    Paket in das Repository hochladen

    Für Maven können Sie mit mvn deploy und mvn release Pakete zum Repository hinzufügen.

    Für Gradle verwenden Sie den Befehl gradle publish, um ein Paket in das Repository hochzuladen.

    Paket im Repository aufrufen

    So prüfen Sie, ob das Paket dem Repository hinzugefügt wurde:

    Console

    1. Öffnen Sie die Seite Repositories in der Console.

      Zur Seite „Repositories“

    2. Klicken Sie in der Repository-Liste auf das Repository quickstart-java-repo.

      Auf der Seite Pakete sind die Pakete des Repositorys aufgeführt.

    gcloud

    1. Führen Sie den folgenden Befehl aus, um die Pakete im Repository quickstart-java-repo aufzulisten:

      gcloud artifacts packages list --repository=quickstart-java-repo
      

      Die Ausgabe sollte in etwa so aussehen:

      Listing items under project <project-id>, location us-central1,\
      repository quickstart-java-repo.
      
      PACKAGE: maven.example.id:gradle-demo
      CREATE_TIME: 2022-01-20T22:46:07
      UPDATE_TIME: 2022-01-20T22:46:07
      

      Dabei ist maven.example.id:gradle-demo die Paket-ID.

      Um die Versionen für ein Paket aufzurufen, führen Sie folgenden Befehl aus:

      gcloud artifacts versions list --package=PACKAGE
      

      Dabei ist PACKAGE die Paket-ID.

Bereinigen

So vermeiden Sie, dass Ihrem Google Cloud-Konto die auf dieser Seite verwendeten Ressourcen in Rechnung gestellt werden.

Prüfen Sie vor dem Entfernen des Repositorys, ob alle Pakete, die Sie beibehalten möchten, an einem anderen Speicherort verfügbar sind.

So löschen Sie das Repository:

Console

  1. Öffnen Sie die Seite Repositories in der Console.

    Zur Seite „Repositories“

  2. Wählen Sie in der Repository-Liste das Repository quickstart-java-repo aus.

  3. Klicken Sie auf Löschen.

gcloud

  1. Um das Repository quickstart-java-repo zu löschen, führen Sie folgenden Befehl aus:

    gcloud artifacts repositories delete quickstart-java-repo
    
  2. Wenn Sie die Einstellungen für das Standard-Repository und den Standard-Speicherort entfernen möchten, die Sie für die aktive gcloud-Konfiguration festgelegt haben, führen Sie die folgenden Befehle aus:

    gcloud config unset artifacts/repository
    gcloud config unset artifacts/location
    

Weitere Informationen