Configurer l'authentification pour Maven et Gradle

Vous devez vous authentifier auprès d'Artifact Registry lorsque vous utilisez une application tierce pour vous connecter à un dépôt Artifact Registry. Cette documentation se concentre sur la configuration de Maven et de Gradle.

Vous n'avez pas besoin de configurer l'authentification pour les environnements d'exécution Cloud Build ou Google Cloud tels que Google Kubernetes Engine et Cloud Run. Vous devez toutefois vérifier que les autorisations requises sont configurées. Pour en savoir plus, consultez les informations sur Cloud Build et le déploiement sur les environnements d'exécution Google Cloud.

Avant de commencer

  1. Installez Google Cloud CLI, puis initialisez-la en exécutant la commande suivante :

    gcloud init
  2. (Facultatif) Configurez des valeurs par défaut pour les commandes gcloud.
  3. Si vous configurez l'authentification avec un dépôt standard, vérifiez la stratégie de version afin de configurer correctement votre projet Maven pour les types de packages Java que vous pouvez importer.

    Console

    1. Ouvrez la page Dépôts dans la console Google Cloud.

      Ouvrir la page "Dépôts"

    2. Cliquez sur le dépôt auquel vous souhaitez vous authentifier.

      La section Détails affiche la règle de version. Si le dépôt dispose d'une règle de version d'instantané, le champ Autoriser l'écrasement d'instantané indique si les instantanés peuvent remplacer les versions correspondantes d'instantanés dans le dépôt.

    gcloud

    Exécutez la commande suivante pour afficher la description d'un dépôt.

    gcloud artifacts repositories describe REPOSITORY \
          [--project=PROJECT] \
          [--location=LOCATION]
    

    • REPOSITORY est l'ID du dépôt. Si vous avez configuré un dépôt Artifact Registry par défaut, il est utilisé lorsque cette option est omise dans la commande.
    • PROJECT est l'ID de projet. Si cette option est ignorée, le projet en cours ou par défaut est utilisé.
    • LOCATION est l'emplacement régional ou multirégional du dépôt.

    Le résultat de la commande inclut des informations sur la règle de version sous mavenConfig. Dans cet exemple, le dépôt dispose d'une règle de version d'instantané. Les instantanés ne peuvent pas écraser des versions identiques dans le dépôt.

    Encryption: Google-managed key
    createTime: '2021-10-04T19:39:10.897404Z'
    format: MAVEN
    mavenConfig:
      allowSnapshotOverwrites: false
      versionPolicy: SNAPSHOT
    

    Si aucune règle de version n'est appliquée à un dépôt, la valeur de mavenConfig est {}.

Présentation

Artifact Registry est compatible avec les méthodes d'authentification suivantes.

Utiliser un assistant d'authentification
Cette option offre la plus grande flexibilité. Lorsque vous incluez l'assistant dans votre configuration Maven ou Gradle, Artifact Registry recherche les identifiants de compte de service dans l'environnement.
Spécifier une clé de compte de service en tant qu'identifiant
Utilisez cette option lorsqu'une application n'accepte pas les identifiants par défaut de l'application, mais elle accepte l'authentification avec un nom d'utilisateur et un mot de passe.

Les clés de compte de service sont des identifiants de longue durée. Suivez les instructions ci-dessous pour limiter l'accès à vos dépôts :

  • Envisagez d'utiliser un compte de service dédié pour interagir avec les dépôts.
  • Attribuez le rôle Artifact Registry minimal requis par le compte de service. Par exemple, attribuez le lecteur Artifact Registry à un compte de service qui télécharge les artefacts uniquement.
  • Si les groupes de votre organisation nécessitent différents niveaux d'accès à des dépôts spécifiques, accordez l'accès au niveau du dépôt plutôt qu'au niveau du projet.
  • Suivez les bonnes pratiques de gestion des identifiants.

S'authentifier à l'aide d'un assistant d'identification

Artifact Registry fournit un wagon Maven et un plug-in Gradle en tant qu'assistants d'identification. Lorsque vous utilisez l'assistant d'identification, vos identifiants ne sont pas stockés dans votre projet Java. À la place, Artifact Registry recherche les identifiants dans l'ordre suivant:

  1. Identifiants par défaut de l'application (ADC), stratégie qui recherche les identifiants dans l'ordre suivant :

    1. Identifiants définis dans la variable d'environnement GOOGLE_APPLICATION_CREDENTIALS.

    2. Identifiants fournis par le compte de service par défaut pour Compute Engine, Google Kubernetes Engine, Cloud Run, App Engine ou Cloud Functions.

  2. Identifiants fournis par Google Cloud CLI, y compris les identifiants utilisateur de la commande gcloud auth application-default login.

La variable GOOGLE_APPLICATION_CREDENTIALS rend le compte pour l'authentification explicite, ce qui facilite le dépannage. Si vous n'utilisez pas la variable, vérifiez que tous les comptes qu'ADC peut utiliser disposent des autorisations requises. Par exemple, le compte de service par défaut pour les VM Compute Engine, les nœuds Google Kubernetes Engine et les révisions Cloud Run dispose d'un accès en lecture seule aux dépôts. Si vous souhaitez importer des données depuis ces environnements à l'aide du compte de service par défaut, vous devez modifier les autorisations.

Configurer un compte de service

Pour créer un compte de service et configurer l'authentification à l'aide de la variable d'environnement :

  1. Créez un compte de service pour agir au nom de votre application ou sélectionnez un compte de service existant que vous utilisez pour l'automatisation.

    Vous aurez besoin de l'emplacement du fichier de clé de compte de service pour configurer l'authentification avec Artifact Registry. Pour les comptes existants, vous pouvez afficher les clés et en créer sur la page "Comptes de service".

    Accéder à la page "Comptes de service"

  2. Accordez le rôle Artifact Registry approprié au compte de service afin de fournir l'accès au dépôt.

  3. Attribuez l'emplacement du fichier de clé du compte de service à la variable GOOGLE_APPLICATION_CREDENTIALS afin que l'assistant d'identification Artifact Registry puisse obtenir votre clé lors de la connexion aux dépôts.

    export GOOGLE_APPLICATION_CREDENTIALS=KEY-FILE
    

    KEY-FILE est le chemin d'accès au fichier de clé du compte de service.

Configurer Maven

  1. Configurez Maven pour le type de dépôt que vous utilisez.

    Standard

    1. Exécutez la commande suivante pour imprimer la configuration de dépôt à ajouter à votre projet Java.

      gcloud artifacts print-settings mvn \
          [--project=PROJECT] \
          [--repository=REPOSITORY] \
          [--location=LOCATION]
      

      • PROJECT est l'ID de projet. Si cette option est ignorée, le projet en cours ou par défaut est utilisé.
      • REPOSITORY est l'ID du dépôt. Si vous avez configuré un dépôt Artifact Registry par défaut, il est utilisé lorsque cette option est omise de la commande.
      • LOCATION est l'emplacement régional ou multirégional du dépôt.
    2. Ajoutez les paramètres renvoyés aux sections appropriées dans le fichier pom.xml pour votre projet Maven. Reportez-vous à la documentation de référence POM de Maven pour plus de détails sur la structure du fichier.

      L'exemple suivant présente les paramètres d'un dépôt qui stocke à la fois l'instantané et les versions.

      <distributionManagement>
        <snapshotRepository>
          <id>artifact-registry</id>
          <url>artifactregistry://LOCATION-maven.pkg.dev/PROJECT/REPOSITORY</url>
        </snapshotRepository>
        <repository>
          <id>artifact-registry</id>
          <url>artifactregistry://LOCATION-maven.pkg.dev/PROJECT/REPOSITORY</url>
        </repository>
      </distributionManagement>
      
      <repositories>
        <repository>
          <id>artifact-registry</id>
          <url>artifactregistry://LOCATION-maven.pkg.dev/PROJECT/REPOSITORY</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.2.0</version>
          </extension>
        </extensions>
      </build>
      

      Les éléments <release> et <snapshot> indiquent si le dépôt stocke des packages de version, des packages d'instantanés ou les deux. Ces paramètres doivent correspondre à la règle de version du dépôt.

      L'élément <build> définit le wagon d'Artifact Registry en tant qu'extension. Pour en savoir plus sur le wagon, consultez la documentation des outils Maven d'Artifact Registry.

    Télétravail ou virtuel

    Modifiez le fichier pom.xml dans votre projet. Reportez-vous à la documentation de référence POM de Maven pour plus de détails sur la structure du fichier.

    L'exemple suivant présente les paramètres d'un dépôt distant qui stocke à la fois les versions d'instantané et de version. Dans cet exemple, le projet dépend d'une version du package Guava.

    <?xml version="1.0" encoding="UTF-8"?>
    <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">
      <modelVersion>4.0.0</modelVersion>
    
      <groupId>com.google.hello</groupId>
      <artifactId>repo-config</artifactId>
      <version>4.1-SNAPSHOT</version>
      <description>version 1 release</description>
    
      <properties>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
      </properties>
      <dependencies>
        <dependency>
          <groupId>com.google.guava</groupId>
          <artifactId>guava</artifactId>
          <version>28.0-jre</version>
        </dependency>
      </dependencies>
    
      <repositories>
        <repository>
          <id>central</id>
          <name>Maven Central remote repository</name>
          <url>artifactregistry://LOCATION-maven.pkg.dev/PROJECT_ID/REMOTE-REPOSITORY-NAME</url>
          <layout>default</layout>
          <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.2.0</version>
          </extension>
        </extensions>
      </build>
    </project>
    
    • La section <repositories> définit le dépôt Artifact Registry. Pour un dépôt distant, l'élément <id> doit être défini sur central. Ce paramètre remplace la valeur par défaut de l'ID de dépôt central hérité du Super POM.

    • La section <build> définit le wagon Artifact Registry en tant qu'extension. Pour en savoir plus sur le wagon, consultez la documentation sur les [outils Maven d'Artifact Registry][maven-tools]{:class="external"}.

    • Dans cet exemple, la section <dependencies> définit une dépendance sur la version 28.0-jre du package Guava.

  2. Maven résout certaines dépendances avant d'appliquer un wagon défini dans pom.xml, y compris:

    • Les références d'un projet Maven enfant à un projet parent à l'aide de l'élément <parent>
    • Dépendances du plug-in stockées dans Artifact Registry.

    Si votre projet doit résoudre ces dépendances, vous devez utiliser le mécanisme des extensions principales pour vous assurer que Maven peut localiser les fichiers POM et les plug-ins parents.

    Dans votre projet, créez le fichier ${maven.projectBasedir}/.mvn/extensions.xml avec le contenu suivant. L'élément <extension> définit le wagon.

    <extensions xmlns="http://maven.apache.org/EXTENSIONS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://maven.apache.org/EXTENSIONS/1.0.0 http://maven.apache.org/xsd/core-extensions-1.0.0.xsd">
      <extension>
        <groupId>com.google.cloud.artifactregistry</groupId>
        <artifactId>artifactregistry-maven-wagon</artifactId>
        <version>2.2.0</version>
      </extension>
    </extensions>
    

    Maven peut désormais résoudre les dépendances parentes ou du plug-in depuis Artifact Registry.

La configuration de l'authentification est terminée.

Configurer Gradle

  1. Configurez Gradle pour le type de dépôt que vous utilisez.

    Standard

    1. Exécutez la commande suivante pour imprimer la configuration de dépôt à ajouter à votre projet Java.

      gcloud artifacts print-settings gradle \
          [--project=PROJECT] \
          [--repository=REPOSITORY] \
          [--location=LOCATION]
      

      • PROJECT est l'ID de projet. Si cette option est ignorée, le projet en cours ou par défaut est utilisé.
      • REPOSITORY est l'ID du dépôt. Si vous avez configuré un dépôt Artifact Registry par défaut, il est utilisé lorsque cette option est omise de la commande.
      • LOCATION est l'emplacement régional ou multirégional du dépôt.
    2. Ajoutez les paramètres du dépôt à votre fichier build.gradle. L'exemple suivant montre l'emplacement relatif des sections imprimées.

      plugins {
        id "maven-publish"
        id "com.google.cloud.artifactregistry.gradle-plugin" version "2.2.0"
      }
      
      publishing {
        publications {
          mavenJava(MavenPublication) {
            groupId 'maven.example.id'
            from components.java
           }
        }
        repositories {
          maven {
            url "artifactregistry://LOCATION-maven.pkg.dev/PROJECT/REPOSITORY"
          }
        }
      }
      
      • La section plugins déclare le plug-in Artifact Registry. Pour plus d'informations sur le plug-in, consultez la documentation relative aux outils Maven Artifact Registry.

      • La section publishing définit les fichiers à importer et le dépôt Artifact Registry cible. Vous pouvez mettre à jour la liste des fichiers dans la section publications lorsque vous êtes prêt pour l'importation. Pour en savoir plus sur les paramètres de publication, consultez la documentation du plug-in de publication Maven.

    Télétravail ou virtuel

    Ajoutez les paramètres du dépôt à votre fichier build.gradle.

    L'exemple suivant présente les paramètres d'un dépôt distant. Dans cet exemple, le projet dépend d'une version du package Guava.

    plugins {
      id 'java'
      id "maven-publish"
      id "com.google.cloud.artifactregistry.gradle-plugin" version "2.2.0"
      id 'maven'
    }
    
    repositories {
      maven {
        url "artifactregistry://LOCATION-maven.pkg.dev /PROJECT_ID/REMOTE-REPOSITORY-NAME"
      }
    }
    dependencies {
      compile "com.google.guava:guava:31.1-jre"
    }
    
    • La section plugins déclare le plug-in Artifact Registry. Pour plus d'informations sur le plug-in, consultez la documentation relative aux outils Maven Artifact Registry.

    • La section repositories définit le dépôt Artifact Registry.

    • Dans cet exemple, la section dependencies définit une dépendance sur la version 31.1-jre du package Guava.

    Définissez les dépendances de votre package dans la section dependencies.

  2. Si vous devez utiliser des dépôts dans votre fichier init.gradle ou settings.gradle, vous pouvez ajouter la configuration du plug-in à ces fichiers.

    Pour init.gradle, ajoutez la configuration suivante :

    initscript {
      repositories {
        maven {
          url "https://plugins.gradle.org/m2/"
        }
      }
      dependencies {
        classpath "gradle.plugin.com.google.cloud.artifactregistry:artifactregistry-gradle-plugin:2.2.0"
      }
    }
    apply plugin: com.google.cloud.artifactregistry.gradle.plugin.ArtifactRegistryGradlePlugin
    

    Pour settings.gradle, ajoutez la configuration suivante :

    buildscript {
      repositories {
        maven {
          url "https://plugins.gradle.org/m2/"              }
        }
      dependencies {
        classpath "gradle.plugin.com.google.cloud.artifactregistry:artifactregistry-gradle-plugin:2.2.0"
      }
    }
    apply plugin: "com.google.cloud.artifactregistry.gradle-plugin"
    

La configuration de l'authentification est terminée.

Configurer l'authentification par mot de passe

Utilisez cette approche lorsque votre application Java nécessite une authentification avec un nom d'utilisateur et un mot de passe donnés.

Configurer un compte de service

Pour créer un compte de service :

  1. Créez un compte de service pour agir au nom de votre application ou sélectionnez un compte de service existant que vous utilisez pour l'automatisation.

    Vous aurez besoin de l'emplacement du fichier de clé de compte de service pour configurer l'authentification avec Artifact Registry. Pour les comptes existants, vous pouvez afficher les clés et en créer sur la page "Comptes de service".

    Accéder à la page "Comptes de service"

  2. Si vous souhaitez activer le compte de service dans la session gcloud CLI actuelle, exécutez la commande suivante:

    gcloud auth activate-service-account ACCOUNT --key-file=KEY-FILE
    

    • ACCOUNT est l'utilisateur ou le compte de service.
    • KEY-FILE est le chemin d'accès au fichier de clé JSON du compte de service.

Configurer Maven

  1. Configurez Maven pour le type de dépôt que vous utilisez.

    Standard

    1. Exécutez la commande suivante pour imprimer la configuration de dépôt à ajouter à votre projet Java.

      gcloud artifacts print-settings mvn \
          [--project=PROJECT] \
          [--repository=REPOSITORY] \
          [--location=LOCATION] \
          --json-key=KEY-FILE
      

      • PROJECT est l'ID de projet. Si cette option est ignorée, le projet en cours ou par défaut est utilisé.
      • REPOSITORY est l'ID du dépôt. Si vous avez configuré un dépôt Artifact Registry par défaut, il est utilisé lorsque cette option est omise dans la commande.
      • LOCATION est l'emplacement régional ou multirégional du dépôt.
      • KEY-FILE est le chemin d'accès au fichier de clé JSON du compte de service.

    La commande renvoie les paramètres à inclure dans votre projet Java, y compris une version de votre clé privée encodée en base64.

    1. Ajoutez les paramètres de dépôt renvoyés dans l'élément <project> aux sections appropriées du fichier pom.xml pour votre projet Maven. Reportez-vous à la documentation de référence POM de Maven pour plus de détails sur la structure du fichier.
    <project>
      <distributionManagement>
        <snapshotRepository>
          <id>artifact-registry</id>
          <url>https://LOCATION-maven.pkg.dev/PROJECT/REPOSITORY</url>
        </snapshotRepository>
        <repository>
          <id>artifact-registry</id>
          <url>https://LOCATION-maven.pkg.dev/PROJECT/REPOSITORY</url>
        </repository>
      </distributionManagement>
    
      <repositories>
        <repository>
          <id>artifact-registry</id>
          <url>https://LOCATION-maven.pkg.dev/PROJECT/REPOSITORY</url>
          <releases>
            <enabled>true</enabled>
          </releases>
          <snapshots>
            <enabled>true</enabled>
          </snapshots>
        </repository>
      </repositories>
    </project>
    

    Les éléments <release> et <snapshot> indiquent si le dépôt stocke des packages de version, des packages d'instantanés ou les deux. Ces paramètres doivent correspondre à la stratégie de version du dépôt.

    1. Ajoutez les paramètres d'authentification renvoyés dans l'élément <settings> à la section <servers> du fichier ~/.m2/settings.xml. Dans l'exemple suivant, KEY est la clé encodée en base64 de votre fichier de clé.

    Pour plus d'informations, consultez la documentation de référence sur les paramètres 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>
    

    Télétravail ou virtuel

    1. Ajoutez les paramètres du dépôt aux sections appropriées du fichier pom.xml pour votre projet Maven. Reportez-vous à la documentation de référence POM de Maven pour plus de détails sur la structure du fichier.

      <repositories>
        <repository>
           <id>central</id>
           <name>Maven Central remote repository</name>
           <url>artifactregistry://LOCATION-maven.pkg.dev/PROJECT_ID/REMOTE-REPOSITORY-NAME</url>
           <layout>default</layout>
           <releases>
             <enabled>true</enabled>
           </releases>
           <snapshots>
            <enabled>true</enabled>
          </snapshots>
        </repository>
      </repositories>
      

    La section <repositories> définit le dépôt Artifact Registry. Pour un dépôt distant, l'élément <id> doit être défini sur central. Ce paramètre remplace la valeur par défaut de l'ID de dépôt central hérité du Super POM.

    1. Encodez votre fichier de clé en base64 avec la commande suivante : Remplacez KEY-FILE par le nom de votre fichier de clé.

      base64 -w 0 KEY-FILE
      
    2. Ajoutez des paramètres d'authentification dans l'élément <settings> à la section <servers> du fichier ~/.m2/settings.xml.

    Pour plus d'informations, consultez la documentation de référence sur les paramètres 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>
    

La configuration de l'authentification est terminée.

Configurer Gradle

  1. Configurez Gradle pour le type de dépôt que vous utilisez.

    Standard

    1. Exécutez la commande suivante pour imprimer la configuration de dépôt à ajouter à votre projet Java.

      gcloud artifacts print-settings gradle \
          [--project=PROJECT] \
          [--repository=REPOSITORY] \
          [--location=LOCATION] \
          --json-key=KEY-FILE
      

      • PROJECT est l'ID de projet.
      • REPOSITORY est l'ID ou l'identifiant complet du dépôt. Si vous avez configuré un dépôt Artifact Registry par défaut, il est utilisé lorsque cette option est omise dans la commande.
      • KEY-FILE est le chemin d'accès au fichier de clé JSON du compte de service. Si vous avez exécuté la commande pour activer le compte de service, vous pouvez omettre cette option.

      La commande renvoie les paramètres à inclure dans votre projet Java, y compris une version de votre clé privée encodée en base64.

    2. La ligne suivante de la configuration renvoyée définit une variable nommée artifactRegistryMavenSecret pour votre clé de compte de service. Ajoutez cette ligne à votre fichier ~/.gradle/gradle.properties afin que la clé ne soit pas visible dans vos builds ou dans votre dépôt de gestion de code source.

      artifactRegistryMavenSecret = KEY
      

      Sur cette ligne, KEY est la clé privée dans le fichier de clé de votre compte de service. Pour _json_key_base64, artifactRegistryMavenSecret est défini sur la clé encodée en base64 comme mot de passe.

    3. Dans build.gradle, spécifiez les paramètres du dépôt :

      plugins {
        id "maven-publish"
      }
      
      publishing {
        repositories {
          maven {
            url "https://LOCATION-maven.pkg.dev/PROJECT/REPOSITORY"
            credentials {
              username = "_json_key_base64"
              password = "$artifactRegistryMavenSecret"
            }
            authentication {
              basic(BasicAuthentication)
            }
          }
        }
      }
      repositories {
        maven {
          url "https://LOCATION-maven.pkg.dev/PROJECT/REPOSITORY"
          credentials {
            username = "_json_key_base64"
            password = "$artifactRegistryMavenSecret"
          }
          authentication {
            basic(BasicAuthentication)
          }
        }
      }
      
      • La section repositories définit l'URL et les identifiants du dépôt pour l'authentification.
      • La section publishing définit les fichiers à importer et le dépôt Artifact Registry cible. Vous pouvez mettre à jour la liste des fichiers dans la section publications lorsque vous êtes prêt pour l'importation. Pour en savoir plus sur les paramètres de publication, consultez la documentation du plug-in de publication Maven.

    Télétravail ou virtuel

    1. Encodez votre fichier de clé en base64 avec la commande suivante : Remplacez KEY-FILE par le nom de votre fichier de clé.

      base64 -w 0 KEY-FILE
      
    2. Dans le fichier ~/.gradle/gradle.properties, ajoutez la ligne suivante afin que votre clé ne soit pas visible dans vos compilations ou dans votre dépôt de contrôle source.

      artifactRegistryMavenSecret = KEY
      

      Sur cette ligne, KEY est le contenu de votre fichier de clé encodé en base64.

    3. Ajoutez les paramètres du dépôt à votre fichier build.gradle.

    L'exemple suivant montre la configuration d'un dépôt distant.

    plugins {
      id 'java'
      id "maven-publish"
      id 'maven'
    }
    
    repositories {
      maven {
        url "artifactregistry://LOCATION-maven.pkg.dev /PROJECT_ID/REMOTE-REPOSITORY-NAME"
        credentials {
        username = "_json_key_base64"
        password = "$artifactRegistryMavenSecret"
      }
      authentication {
        basic(BasicAuthentication)
      }
      dependencies {
        compile "com.google.guava:guava:31.1-jre"
      }
    
    • La section repositories définit le dépôt Artifact Registry.

    • Dans cet exemple, la section dependencies définit une dépendance sur la version 31.1-jre du package Guava.

    Définissez les dépendances de votre package dans la section dependencies.

La configuration de l'authentification est terminée.

Étapes suivantes