Qual é a diferença entre um Repositório de instantâneos e um Repositório de liberação ?
Isso se refere à configuração de Repositórios (como Artifactory, Nexus etc)
Qual é a diferença entre um Repositório de instantâneos e um Repositório de liberação ?
Isso se refere à configuração de Repositórios (como Artifactory, Nexus etc)
Respostas:
Liberar artefatos
Essas são versões específicas e pontuais. Os artefatos liberados são considerados sólidos, estáveis e perpétuos para garantir que as compilações que dependem deles sejam repetidas ao longo do tempo. Os artefatos JAR liberados são associados às assinaturas PGP e as somas de verificação verificam a autenticidade e a integridade do artefato de software binário. O repositório Central Maven armazena artefatos de liberação.
Artefatos instantâneos
Os instantâneos capturam um trabalho em andamento e são usados durante o desenvolvimento. Um artefato de instantâneo tem um número de versão como “1.3.0” ou “1.3” e um carimbo de data / hora. Por exemplo, um artefato de instantâneo para commons-lang 1.3.0 pode ter o nome commons-lang-1.3.0-20090314.182342-1.jar.
Retirado de refcard
1.1.0.M5
ou 1.1.0.M4
uma versão do instantâneo?
Os repositórios de lançamento contêm lançamentos e os repositórios de instantâneos contêm instantâneos. No maven, um instantâneo é definido como um artefato com uma versão que termina em -SNAPSHOT. Quando implantado, o instantâneo é transformado em um carimbo de data / hora. Por definição, os instantâneos são mutáveis, as liberações são imutáveis. É por isso que o Nexus faz com que você os armazene separadamente, porque normalmente você não se importa se perder instantâneos, mas se importará se perder lançamentos. Isso torna muito mais fácil lidar com a limpeza de instantâneos.
Os instantâneos foram criados para fornecer o número da versão como -SNAPSHOTS, está em desenvolvimento e pode ser alterado a qualquer momento.
O repositório interno é o repositório de lançamento com número de versão fixo. Você pode modificar os SNAPSHOTS, mas esse artefato nunca muda depois de ser lançado.
Normalmente, no maven, temos dois tipos de builds:
1) Construções de instantâneos : SNAPSHOT é a versão especial que indica a cópia de implantação atual e não uma versão regular específica. O Maven verifica a versão de cada construção no repositório remoto. As compilações de instantâneo nada mais são do que compilações de desenvolvimento.
2) Release builds : Release significa remover o SNAPSHOT no ID da versão para o build. Estas são as versões regulares de construção.
Artefatos de instantâneo e artefatos de liberação são enviados para instantâneo e repositórios de liberação, respectivamente.
SNAPSHOT aqui não significa realmente UM instantâneo que está congelado e não muda, SNAPSHOT cobre vários instantâneos cujas modificações não são grandes o suficiente para serem representadas por um novo número de versão