Gestire i pacchetti Java

Artifact Registry supporta i pacchetti Java creati con Maven e Gradle.

Panoramica

Per familiarizzare con i pacchetti Java in Artifact Registry, puoi provare la guida rapida.

Per saperne di più, leggi le seguenti informazioni:

  1. Crea un repository di pacchetti Java per i tuoi pacchetti.
  2. Scopri come creare repository remoti e virtuali.
  3. Scopri come utilizzare repository remoti e virtuali in questa esempio di utilizzo del repository.
  4. Concedi le autorizzazioni all'account che si connetterà al repository. Gli account di servizio per le integrazioni comuni con Artifact Registry dispongono di autorizzazioni predefinite per i repository nello stesso progetto.
  5. Configura i tuoi strumenti:
  6. Scopri di più sulla gestione dei pacchetti.

Versioni di release e snapshot di Maven

Maven distingue tra le versioni snapshot e release dei progetti Maven.

Snapshot

Uno snapshot è una versione pre-release di un progetto Java. Il numero di versione per uno snapshot include il suffisso -SNAPSHOT nel tuo modello di oggetti del progetto (POM). Ad esempio, questa impostazione nel file pom.xml è per una versione 1.0 del progetto in fase di sviluppo:

<version>1.0-SNAPSHOT</version>

Quando pubblichi un pacchetto da questo progetto, Maven 3 aggiunge automaticamente un timestamp al numero di versione dell'istantanea in modo che ogni versione dell'istantanea sia univoca. Maven 2 supporta versioni degli snapshot non univoche in modo da sovrascrivere di snapshot esistenti in un repository. Questo approccio è problematico per la riproducibilità delle build, motivo per cui Maven 3 non supporta più gli snapshot non univoci.

Gli snapshot offrono un modo per pubblicare iterativamente le versioni aggiornate di un pacchetto pre-release senza incrementare il numero di versione nel tuo Maven ogni volta che lo pubblichi nel repository. Durante lo sviluppo, altri progetti con dipendenze dal pacchetto possono ottenere l'istantanea più recente della versione 1.0 dal repository.

Consulta specifiche dell'ordine della versione per dettagli sulla sintassi del numero di versione Maven e l'ordinamento.

Release

Quando è tutto pronto per rilasciare un pacchetto, devi rimuovere il suffisso -SNAPSHOT dal numero di versione nel file POM e aggiorna tutti i progetti che dipendono il pacchetto in modo da utilizzare la versione di release al posto dello snapshot completamente gestita.

Per elencare tutte le dipendenze degli snapshot, puoi filtrare l'albero delle dipendenze con il comando:

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

Criterio di versione di Artifact Registry

Quando crei un Repository Maven in Artifact Registry, puoi specificare Criteri relativi alla versione di Maven:

  • Nessuna: archivia sia i pacchetti di snapshot che quelli di rilascio. Questa è l'impostazione predefinita.
  • Snapshot: consente di archiviare solo i pacchetti di snapshot.
  • Release: solo pacchetti di release dei negozi.

Se scegli il criterio di versione snapshot, puoi anche specificare se il parametro consente versioni degli snapshot non univoche che sovrascrivono le versioni corrispondenti nel repository. Ti consigliamo di utilizzare versioni univoche poiché Maven 3 non supportare il modello di versione non univoco.