Suponha que estou fazendo uma compilação completa em meu grande projeto que tem 7 módulos e, no 6º módulo, a compilação falhou porque um teste falhou. Existe alguma maneira de iniciar a construção do ponto em que falhou?
91
Você pode retomar a compilação do 6º módulo usando -rf
ou --resume-from
:
-rf, --resume-from
Retomar o reator do projeto especificado
Consulte as opções avançadas do reator para obter detalhes.
subproject/subsubproject
como um parâmetromaven -rf <module name> clean install
mvn -rf :moduleName install
. (Não sei exatamente por que o cólon é necessário, mas parece ser - pelo menos para a minha configuração.)install
objetivo, porque a continuação da construção pode, então, obter os artefatos que já foram construídos em seu repositório Maven local para resolver dependências deles. Acho que é uma má prática executarinstall
compilações, pois você acaba entulhando seu repositório local com instantâneos e pode acabar dependendo de um instantâneo mais antigo do que o esperado. Parece que para compilações onde você apenaspackage
e nãoinstall
usa,-rf
não é uma opção: você terá que fazer a compilação inteira.Aqui está o exemplo
mvn clean install -rf :your-module
fonte
você pode retomar a compilação de qualquer módulo que desejar usando o
-rf
comando. Por exemplo, se sua compilação falhou em myproject-proxy, você pode usar o seguinte comando:mvn -rf myproject-proxy clean install
fonte
olhe o resumo do maven e você verá os módulos executados e onde o maven está parado. então tente isto:
mvn clean install-Dmaven.test.skip=true -rf :yourModule
fonte
De acordo com o " What's New in Maven 4 " (novembro de 2020) de Maarten Mulders , em breve você será capaz de, com o próximo Maven 4.0.0 (Q1 2021)
Considere este exemplo de estrutura de projeto:
fonte
Sintaxe: mvn -rf modulename mavengoal ou mvn --resume-from modulename mavengoal
Ex: mvn -rf instalação limpa do módulo de administração ou mvn --resume-from instalação limpa do módulo de administração
fonte
-rf
não é abreviação de--remove-from
. É abreviação de--resume-from
Você poderia executar a compilação do módulo 6 separadamente para ver se ainda falha, mas temo que você precise compilar todos os módulos desde o início quando quiser executar a compilação "grande".
Editar: é claro que as compilações subsequentes serão mais rápidas porque o código dos módulos 1-5 já está compilado, a menos que você execute o clean como parte de sua compilação.
fonte