Utiliser des packages Java

Artifact Registry est compatible avec les packages Java que vous compilez avec Maven et Gradle.

Présentation

Pour vous familiariser avec les packages Java dans Artifact Registry, vous pouvez consulter le guide de démarrage rapide. Vous pouvez également regarder une vidéo de présentation.

Pour en savoir plus, consultez les informations suivantes :

  1. Créez un dépôt de packages Java pour vos packages.
  2. Accordez des autorisations au compte qui se connectera au dépôt. Les comptes de service pour les intégrations courantes avec Artifact Registry disposent d'autorisations par défaut pour les dépôts du même projet.
  3. Configurez vos outils :
  4. Découvrir comment gérer les packages.

Versions des instantanés et des versions Maven

Maven distingue les versions snapshot et release de vos projets Maven.

Instantanés

Un instantané est une version préliminaire d'un projet Java. Le numéro de version d'un instantané inclut le suffixe -SNAPSHOT dans votre modèle d'objet de projet. Par exemple, ce paramètre du fichier pom.xml est destiné à une version 1.0 d'un projet en cours de développement:

<version>1.0-SNAPSHOT</version>

Lorsque vous publiez un package à partir de ce projet, Maven 3 ajoute automatiquement un horodatage au numéro de version de l'instantané afin que chaque version d'instantané soit unique. Maven 2 est compatible avec les versions d'instantanés non uniques afin d'écraser les instantanés existants dans un dépôt. Cette approche pose un problème de reproductibilité des compilations. C'est pourquoi Maven 3 n'accepte plus les instantanés non uniques.

Les instantanés vous permettent de publier de manière itérative les versions mises à jour d'un package préliminaire sans incrémenter le numéro de version dans votre projet Maven à chaque fois que vous publiez un package dans le dépôt. Au cours du développement, les autres projets avec des dépendances sur le package peuvent ensuite obtenir le dernier instantané de la version 1.0 à partir du dépôt.

Reportez-vous à la section Spécification de l'ordre des versions pour plus d'informations sur la syntaxe des numéros de version Maven et sur l'ordre de tri.

Versions

Lorsque vous êtes prêt à publier un package, supprimez le suffixe -SNAPSHOT du numéro de version dans le fichier POM et mettez à jour les projets qui dépendent du package afin qu'ils utilisent la version au lieu de la version. version de l'instantané.

Pour répertorier toutes les dépendances d'instantané, vous pouvez filtrer l'arborescence de dépendances à l'aide de la commande suivante:

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

Règle de version d'Artifact Registry

Lorsque vous créez un dépôt Maven dans Artifact Registry, vous pouvez spécifier une stratégie de version Maven:

  • Aucun : stocke les packages d'instantanés et de versions. Il s'agit du paramètre par défaut.
  • Instantané - Stocke les packages d'instantanés uniquement.
  • Version : stocke uniquement les packages de versions.

Si vous choisissez la stratégie de version d'instantané, vous pouvez également spécifier si le dépôt autorise les versions d'instantanés non uniques qui écrasent les versions correspondantes dans le dépôt. Nous vous recommandons d'utiliser des versions uniques, car Maven 3 n'est pas compatible avec le modèle de version non unique.

Présentation de Google Video

Cette vidéo présente Artifact Registry et explique comment l'utiliser avec Cloud Build pour travailler avec les packages Java. Pour en savoir plus sur l'utilisation de Cloud Build avec Artifact Registry, consultez la section Intégrer à Cloud Build.