Condividi tramite


Introduzione ai pacchetti Maven in Azure Artifacts

Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022 | Azure DevOps Server 2020

I pacchetti Maven sono file binari Java compilati usando lo strumento di compilazione Apache Maven. Con i feed di Azure Artifacts è possibile archiviare più tipi di pacchetto in un singolo feed. I pacchetti archiviati possono quindi essere ripristinati per compilare il progetto o condividere con il team e i clienti. I feed di Azure Artifacts supportano anche l'uso di pacchetti da registri pubblici, ad esempio Maven Central, il repository Google Maven, i plug-in di Gradle e JitPack tramite origini upstream.

Questo articolo illustra come configurare il progetto Maven, connetterlo a un feed di Azure Artifacts e pubblicare e ripristinare i pacchetti Maven.

Prerequisiti

Prodotto Requisiti
Azure DevOps - Un'organizzazione di Azure DevOps.
- Un progetto Azure DevOps .
- Scaricare e installare Apache Maven.

Creare un feed

Se si dispone già di un feed, è possibile passare alla sezione successiva. In caso contrario, creare un nuovo feed come segue:

  1. Accedere all'organizzazione di Azure DevOps e passare al progetto.

  2. Selezionare Artefatti e quindi Crea feed.

  3. Specificare un nome per il feed, selezionare visibilità per definire chi può visualizzare i pacchetti e scegliere l'ambito del feed. Per includere pacchetti da registri pubblici, ad esempio Maven Central o Google Maven Repository, selezionare Includi pacchetti da origini pubbliche comuni.

  4. Al termine, fare clic su Crea.

Connettersi a un feed

Dopo aver creato un feed, è necessario configurare il file di configurazione per l'autenticazione con il feed, è anche necessario creare un token di accesso personale per l'autenticazione con Azure DevOps. Seguire questa procedura per autenticare e connettersi al feed:

  1. Generare un token di accesso personale con il campo di Packaging>Lettura e scrittura. Copia il PAT e salvalo in una posizione sicura, che ti servirà nei passaggi successivi.

  2. Accedere ad Azure DevOps e quindi passare al progetto.

  3. Selezionare Artefatti e quindi selezionare il tuo feed dal menu a discesa.

  4. Selezionare Connetti al feed e quindi selezionare Maven nel riquadro di spostamento a sinistra.

  5. Se questa è la prima volta che si usa Azure Artifacts con Maven in questo computer, assicurarsi di aver installato i prerequisiti.

  6. Aprire il file pom.xml e aggiungere il frammento specificato nella sezione Configurazione progetto all'interno delle sezioni <repositories> e <distributionManagement>. Il pom.xml dovrebbe essere simile al seguente:

        <repositories>
            <repository>
                <id>FEED_NAME</id>
                <url>https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/maven/v1</url>
                <releases>
                <enabled>true</enabled>
                </releases>
                <snapshots>
                <enabled>true</enabled>
                </snapshots>
            </repository>
        </repositories>
        <distributionManagement>
            <repository>
                <id>FEED_NAME</id>
                <url>https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/maven/v1</url>
                <releases>
                <enabled>true</enabled>
                </releases>
                <snapshots>
                <enabled>true</enabled>
                </snapshots>
            </repository>
        </distributionManagement>
    
  7. Aprire il file settings.xml a livello utente e aggiungere il PAT nel tag <password>. Questo file deve essere mantenuto in locale, quindi assicurarsi di non eseguirne il commit nel codice sorgente per non esporre le credenziali. Il file settings.xml dovrebbe assomigliare al seguente:

        <servers>
            <server>
                <id>MavenDemo</id>
                <username><ORGANIZATION_NAME></username>
                <password>[PERSONAL_ACCESS_TOKEN]</password>
            </server>
        </servers>
    

Pubblicare pacchetti

Dopo aver eseguito l'autenticazione con il feed, è possibile pubblicare e ripristinare i pacchetti:

  1. Se il pacchetto non è ancora stato compilato, aprire una finestra del prompt dei comandi e passare alla directory del progetto in cui si trova il file pom.xml , eseguire il comando seguente per creare il pacchetto del progetto. Questo comando compila il codice, esegue test inclusi e crea un pacchetto del progetto in un formato distribuibile, ad esempio un file JAR.

    mvn package
    
  2. Eseguire il comando seguente dalla directory del progetto per pubblicare il pacchetto nel feed:

    mvn deploy
    
  3. Dopo aver pubblicato correttamente il pacchetto, sarà disponibile a breve nel feed di Azure Artifacts.

    Screenshot che mostra un pacchetto Maven distribuito in un feed.

Nota

Se l'organizzazione usa un firewall o un server proxy, assicurarsi di consentire gli URL di dominio e gli indirizzi IP di Azure Artifacts.

Ripristinare pacchetti

Per ripristinare i pacchetti dal feed, eseguire il mvn install comando dalla directory del progetto per installare tutte le dipendenze elencate nel pom.xml. Se il pacchetto che si vuole installare dal feed non è incluso nel pom.xml, ecco come aggiungerlo e ripristinarlo dal feed:

  1. Accedere ad Azure DevOps e quindi passare al progetto.

  2. Selezionare Artefatti e quindi selezionare il tuo feed dal menu a discesa.

  3. Selezionare il pacchetto da installare, passare a Panoramica>Maven e quindi copiare il frammento di dipendenza. Dovrebbe essere simile al seguente:

    <dependency>
      <groupId>MyGroup</groupId>
      <artifactId>MavenQuickStartDemo</artifactId>
      <version>1.0-SNAPSHOT</version>
    </dependency>
    
  4. Aprire il file pom.xml e incollare il frammento all'interno del <dependencies> tag.

  5. Eseguire il comando seguente dalla directory in cui si trova il file pom.xml per ripristinare i pacchetti:

    mvn install