Administra paquetes de Java

Artifact Registry admite paquetes de Java que compilas con Maven y Gradle.

Descripción general

Para familiarizarte con los paquetes de Java en Artifact Registry, puedes probar la guía de inicio rápido.

Cuando estés listo para obtener más información, lee lo siguiente:

  1. Crea un repositorio de paquetes de Java para tus paquetes.
  2. Obtén información para crear repositorios remotos y virtuales.
  3. Obtén información sobre cómo se pueden usar los repositorios remotos y virtuales en este ejemplo de uso de repositorios.
  4. Otorga permisos a la cuenta que se conectará con el repositorio. Las cuentas de servicio para las integraciones comunes con Artifact Registry tienen permisos predeterminados en los repositorios del mismo proyecto.
  5. Configura tus herramientas:
  6. Obtén más información sobre cómo administrar paquetes

Versiones de instantáneas y lanzamientos de Maven

Maven distingue entre las versiones snapshot y release de tus proyectos de Maven.

Instantáneas

Una instantánea es una versión previa al lanzamiento de un proyecto de Java. El número de versión de una instantánea incluye el sufijo -SNAPSHOT en el modelo de objetos del proyecto (POM). Por ejemplo, este parámetro de configuración en el archivo pom.xml es para una versión 1.0 del proyecto que está en desarrollo:

<version>1.0-SNAPSHOT</version>

Cuando publicas un paquete desde este proyecto, Maven 3 adjunta automáticamente una marca de tiempo al número de versión de la instantánea para que cada versión de la instantánea sea única. Maven 2 admite versiones de instantáneas no únicas como un medio para reemplazar las instantáneas existentes en un repositorio. Este enfoque es problemático para la reproducibilidad de las compilaciones, por lo que Maven 3 ya no admite instantáneas no únicas.

Las instantáneas te proporcionan una forma de publicar de forma iterativa versiones actualizadas de un paquete preliminar sin incrementar el número de versión en tu proyecto de Maven cada vez que publicas en el repositorio. Durante el desarrollo, otros proyectos con dependencias en el paquete pueden obtener la instantánea más reciente de la versión 1.0 del repositorio.

Consulta la especificación del orden de las versiones para obtener detalles sobre la sintaxis del número de versión de Maven y el orden de clasificación.

Versiones

Cuando tengas todo listo para lanzar un paquete, quita el sufijo -SNAPSHOT del número de versión en el archivo POM y actualiza los proyectos que dependen del paquete para que usen la versión de actualización en lugar de la versión de instantánea.

Para enumerar todas las dependencias de instantáneas, puedes filtrar el árbol de dependencias con el siguiente comando:

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

Política de versiones de Artifact Registry

Cuando creas un repositorio de Maven en Artifact Registry, puedes especificar una política de versión de Maven:

  • Ninguno: Almacena paquetes de instantáneas y de lanzamiento. Esta es la configuración predeterminada.
  • Snapshot: Almacena solo paquetes de instantáneas.
  • Lanzamiento: Solo almacena paquetes de lanzamiento.

Si eliges la política de versiones de instantáneas, también puedes especificar si el repositorio permite versiones de instantáneas no únicas que reemplacen versiones coincidentes en el repositorio. Recomendamos usar versiones únicas, ya que Maven 3 no es compatible con el modelo de versión no única.