O Artifact Registry suporta pacotes Java que cria com o Maven e o Gradle.
Vista geral
Para se familiarizar com os pacotes Java no Artifact Registry, pode experimentar o início rápido.
Quando tiver tudo pronto para saber mais, leia as seguintes informações:
- Crie um repositório de pacotes Java para os seus pacotes.
- Saiba como criar repositórios remotos e virtuais.
- Leia acerca da forma como os repositórios remotos e virtuais podem ser usados neste exemplo de utilização de repositórios.
- Conceda autorizações à conta que vai associar-se ao repositório. As contas de serviço para integrações comuns com o Artifact Registry têm autorizações predefinidas para repositórios no mesmo projeto.
- Configure as suas ferramentas:
- Configure a autenticação para o Maven ou o Gradle.
- Se quiser usar o sbt como uma ferramenta de compilação para Scala e Java em vez de usar o Maven ou o Gradle, existe um plug-in sbt criado pela comunidade disponível. Esta documentação não descreve a configuração nem a utilização de clientes Scala.
- Configure o Cloud Build para carregar e transferir pacotes.
- Saiba mais sobre a implementação em Google Cloud ambientes de tempo de execução.
- Saiba como gerir pacotes.
Versões de lançamento e instantâneo do Maven
O Maven distingue entre as versões snapshot e release dos seus projetos Maven.
Instantâneos
Um instantâneo é uma versão de pré-lançamento de um projeto Java. O número da versão
de uma imagem instantânea inclui o sufixo -SNAPSHOT
no seu modelo de objeto do projeto
(POM). Por exemplo, esta definição no ficheiro pom.xml
destina-se a uma versão 1.0
do projeto que está em desenvolvimento:
<version>1.0-SNAPSHOT</version>
Quando publica um pacote a partir deste projeto, o Maven 3 anexa automaticamente uma data/hora ao número da versão de pré-lançamento para que cada versão de pré-lançamento seja única. O Maven 2 suporta versões de pré-lançamento não únicas como forma de substituir pré-lançamentos existentes num repositório. Esta abordagem é problemática para a reprodutibilidade das compilações, motivo pelo qual o Maven 3 já não suporta instantâneos não únicos.
As capturas de ecrã permitem-lhe publicar iterativamente versões atualizadas de um pacote de pré-lançamento sem aumentar o número da versão no seu projeto Maven sempre que publicar no repositório. Durante o desenvolvimento, os outros projetos com dependências no pacote podem obter a versão mais recente da versão 1.0
do repositório.
Consulte a especificação da ordem das versões para ver detalhes sobre a sintaxe do número da versão do Maven e a ordem de ordenação.
Versões
Quando estiver a postos para lançar um pacote, remova o sufixo -SNAPSHOT
do número da versão no ficheiro POM e atualize todos os projetos que dependam do pacote para que usem a versão de lançamento em vez da versão de snapshot.
Para listar todas as dependências de instantâneos, pode filtrar a árvore de dependências com o comando:
mvn dependency:tree -Dincludes=:::*-SNAPSHOT
Política de versões do Artifact Registry
Quando cria um repositório Maven no Artifact Registry, pode especificar uma política de versão do Maven:
- Nenhum: armazena os pacotes de instantâneos e de lançamento. Esta é a predefinição.
- Snapshot: armazena apenas pacotes de instantâneos.
- Lançamento: armazena apenas pacotes de lançamento.
Se escolher a política de versão de instantâneo, também pode especificar se o repositório permite versões de instantâneo não únicas que substituam as versões correspondentes no repositório. Recomendamos que use versões únicas, uma vez que o Maven 3 não suporta o modelo de versão não única.