Armazene pacotes Java no Artifact Registry

Neste guia de início rápido, mostramos como configurar um repositório Maven particular do Artifact Registry e fazer upload de um pacote para ele.


Para seguir as instruções detalhadas desta tarefa diretamente no console do Google Cloud, clique em Orientação:

Orientações


Antes de começar

  1. Faça login na sua conta do Google Cloud. Se você começou a usar o Google Cloud agora, crie uma conta para avaliar o desempenho de nossos produtos em situações reais. Clientes novos também recebem US$ 300 em créditos para executar, testar e implantar cargas de trabalho.
  2. No console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.

    Acessar o seletor de projetos

  3. Verifique se a cobrança está ativada para o seu projeto do Google Cloud.

  4. Ative a API Artifact Registry.

    Ative a API

  5. No console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.

    Acessar o seletor de projetos

  6. Verifique se a cobrança está ativada para o seu projeto do Google Cloud.

  7. Ative a API Artifact Registry.

    Ative a API

Iniciar o Cloud Shell

Neste guia de início rápido, você usará o Cloud Shell, que é um ambiente shell para gerenciar recursos hospedados no Google Cloud.

O Cloud Shell vem pré-instalado com a Google Cloud CLI e o Java. A CLI gcloud fornece a interface de linha de comando principal do Google Cloud.

Inicie o Cloud Shell:

  1. Acesse o Console do Google Cloud.

    Console do Google Cloud

  2. Na barra de ferramentas do console do Google Cloud, clique em Ativar o Cloud Shell:

Uma sessão do Cloud Shell é aberta dentro de um quadro inferior no console. Use esse shell para executar comandos gcloud.

Criar um repositório de pacotes Java

Crie o repositório para seus artefatos Java.

  1. Crie o repositório:

Console

  1. Abra a página Repositórios no console do Google Cloud.

    Abrir a página Repositórios

  2. Clique em Criar repositório.

  3. Especifique quickstart-java-repo como o nome do repositório.

  4. Escolha Maven como o formato e Standard como o modo.

  5. Em Tipo de local, selecione Região e escolha o local us-central1.

  6. Clique em Criar.

    O repositório é adicionado à lista de repositórios.

gcloud

  1. Execute o seguinte comando para criar um novo repositório de pacotes Java no projeto atual chamado quickstart-java-repo no local us-central1.

    gcloud artifacts repositories create quickstart-java-repo --repository-format=maven \
    --location=us-central1 --description="Java package repository"
    
  2. Execute o seguinte comando para verificar se o repositório foi criado:

    gcloud artifacts repositories list
    

    Para saber mais sobre os comandos do Artifact Registry, execute o comando gcloud artifacts.

Configure o Maven

  1. Escolha um projeto Maven simples para usar.

    Se você não tiver um projeto simples disponível, crie o projeto Maven em 5 minutos.

    Neste guia de início rápido, presumimos que o projeto simples não tem outras dependências mãe ou de plug-in armazenadas no Artifact Registry. Para mais detalhes sobre como configurar um projeto Maven com dependências no Artifact Registry, consulte Como autenticar com um auxiliar de credencial.

  2. Para simplificar os comandos gcloud, defina o repositório padrão como quickstart-java-repo e o local padrão como us-central1. Depois que os valores forem definidos, não será necessário especificá-los nos comandos gcloud que exigem um repositório ou local.

    Para definir o repositório, execute o comando:

    gcloud config set artifacts/repository quickstart-java-repo
    

    Para definir o local, execute o comando:

    gcloud config set artifacts/location us-central1
    

    Saiba mais sobre esses comandos na documentação do gcloud config set.

  3. Execute o comando a seguir para imprimir as configurações do repositório padrão quickstart-java-repo.

    gcloud artifacts print-settings mvn
    

    A saída do comando gcloud é semelhante ao snippet a seguir, em que PROJECT é o ID do projeto.

    <distributionManagement>
      <snapshotRepository>
        <id>artifact-registry</id>
        <url>artifactregistry://us-central1-maven.pkg.dev/PROJECT/quickstart-java-repo</url>
      </snapshotRepository>
      <repository>
        <id>artifact-registry</id>
        <url>artifactregistry://us-central1-maven.pkg.dev/PROJECT/quickstart-java-repo</url>
      </repository>
    </distributionManagement>
    
    <repositories>
      <repository>
        <id>artifact-registry</id>
        <url>artifactregistry://us-central1-maven.pkg.dev/PROJECT/quickstart-java-repo</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.1</version>
        </extension>
      </extensions>
    </build>
    
  4. Adicione as configurações ao arquivo pom.xml do seu projeto do Maven. O esboço a seguir mostra a colocação relativa de cada elemento principal. Consulte a referência do POM do Maven para ver detalhes sobre a estrutura do arquivo.

    <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">
    
      <!-- Build Settings -->
      <build>
        ...
        <extensions>...</extensions>
      </build>
    
      <!-- Environment Settings -->
      <repositories>...</repositories>
      <distributionManagement>...</distributionManagement>
    </project>
    

Agora seu projeto Maven pode fazer upload de pacotes para o repositório.

Configurar o Gradle

Crie um projeto simples do Gradle para implantar um pacote no repositório do Artifact Registry que você criou. Se você não tiver um build de teste do Gradle, siga o tutorial introdutório do Gradle para criar um build simples do Gradle.

Para simplificar os comandos gcloud, defina o repositório padrão como quickstart-java-repo e o local padrão como us-central1. Depois que os valores forem definidos, não será necessário especificá-los nos comandos gcloud que exigem um repositório ou local.

Para definir o repositório, execute o comando:

gcloud config set artifacts/repository quickstart-java-repo

Para definir o local, execute o comando:

gcloud config set artifacts/location us-central1

Saiba mais sobre esses comandos na documentação do gcloud config set.

  1. Adicione configurações para conectar o repositório ao arquivo build.gradle. O comando a seguir imprime configurações para adicionar ao repositório quickstart-java-repo padrão.

    gcloud artifacts print-settings gradle
    

    A saída do comando gcloud é semelhante ao exemplo a seguir, em que PROJECT é o ID do projeto.

    plugins {
      id "maven-publish"
      id "com.google.cloud.artifactregistry.gradle-plugin" version "2.2.1"
          }
    
    publishing {
      repositories {
        maven {
          url "artifactregistry://us-central1-maven.pkg.dev/PROJECT/quickstart-java-repo"
        }
      }
    }
    
    repositories {
      maven {
        url "artifactregistry://us-central1-maven.pkg.dev/PROJECT/quickstart-java-repo"
      }
    }
    
  2. Verifique se o arquivo build.gradle inclui uma seção de publicações. Se não houver, adicione a seção ao arquivo build.gradle.

    A seção publications é filha de publishing, conforme mostrado neste exemplo:

    publishing {
      publications {
           mavenJava(MavenPublication) {
              groupId  'maven.example.id'
              from components.java
           }
      }
      repositories {
        maven {
          url "artifactregistry://us-central1-maven.pkg.dev/PROJECT/quickstart-java-repo"
        }
      }
    }
    

    Também é possível adicionar a configuração do repositório aos arquivos init.gradle ou settings. Para detalhes sobre essas opções, consulte Como configurar a autenticação.

    Faça upload de um pacote para o repositório

    Para o Maven, use mvn deploy e mvn release para adicionar pacotes ao repositório.

    Para Gradle, use o comando gradle publish para fazer upload de um pacote para o repositório.

    Veja o pacote no repositório

    Para verificar se o pacote foi adicionado ao repositório:

    Console

    1. Abra a página Repositórios no console do Google Cloud.

      Abrir a página Repositórios

    2. Na lista de repositórios, clique no repositório quickstart-java-repo.

      A página Pacotes lista os pacotes no repositório.

    gcloud

    1. Para listar os pacotes do repositório quickstart-java-repo, execute o seguinte comando:

      gcloud artifacts packages list --repository=quickstart-java-repo
      

      A saída será semelhante a esta:

      Listing items under project <project-id>, location us-central1,\
      repository quickstart-java-repo.
      
      PACKAGE: maven.example.id:gradle-demo
      CREATE_TIME: 2022-01-20T22:46:07
      UPDATE_TIME: 2022-01-20T22:46:07
      

      Em que maven.example.id:gradle-demo é o ID do pacote.

      Para ver as versões de um pacote, execute o seguinte comando:

      gcloud artifacts versions list --package=PACKAGE
      

      Em que PACKAGE é o ID do pacote.

Limpar

Para evitar cobranças na sua conta do Google Cloud pelos recursos usados nesta página, siga estas etapas.

Antes de remover o repositório, verifique se os pacotes que você quer manter estão disponíveis em outro local.

Para excluir o repositório:

Console

  1. Abra a página Repositórios no console do Google Cloud.

    Abrir a página Repositórios

  2. Na lista de repositórios, selecione o repositório quickstart-java-repo.

  3. Clique em Excluir.

gcloud

  1. Para excluir o repositório quickstart-java-repo, execute o seguinte comando:

    gcloud artifacts repositories delete quickstart-java-repo
    
  2. Se você quiser remover as configurações padrão de repositório e localização que definiu para a configuração ativa gcloud, execute os seguintes comandos:

    gcloud config unset artifacts/repository
    gcloud config unset artifacts/location
    

A seguir