Pergunta

Como parte de uma implantação automatizada, preciso de um script para baixar a versão mais recente de um artefato do nosso repositório interno.

Idealmente, este script estará com ANT ou um script de shell Unix.

Por exemplo:

Eu tenho myartifact.war e ele tem versões 1.0, 1.1 e 2.0 - preciso do script, dado o ID do grupo correto e o ID do artefato para recuperar a versão 2.0 do nosso repositório MAVEN (atualmente usando o Artifactory).

Existe alguma maneira fácil de fazer isso?

Foi útil?

Solução

Você pode analisar o Maven-Metadata.xml para ver quais versões estão disponíveis e qual versão é a versão "Release". Veja esta resposta sobre Versões do plug -in para mais detalhes.

Se você estiver usando o Nexus, pode usar o Rest API Para consultar o repositório. Você também pode usar o API do cliente REST Para simplificar seu processamento.

Para atualizar a versão de lançamento, ative o perfil de liberação no Maven Super Pom quando você faz MVN Implante. Você pode fazer isso adicionando -Prelease-perfil ou -DperformRelease = true para a linha de comando.

O perfil é ativado por padrão na meta de execução da MAVEN-RELEASE-PLUGIN. É controlado pelo UserEleaseProfile propriedade. Veja o Liberação-Performa documentação do objetivo para obter mais detalhes.

Outras dicas

Você pode usar a meta do plug -in de dependência do Maven get junto com LATEST como versão do seu artefato:

mvn org.apache.maven.plugins:maven-dependency-plugin:2.8:get
    -DremoteRepositories=<URL_to_your_maven_repo>
    -Dartifact=<group_id>:<artifact_id>:LATEST
    -Dpackaging=jar
    -Ddest=<target_dir>/<artifact_name>.jar
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top