"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como posso construir um módulo específico em um projeto multimódulo Maven sem encontrar erros de dependência?

Como posso construir um módulo específico em um projeto multimódulo Maven sem encontrar erros de dependência?

Publicado em 2024-11-12
Navegar:444

How can I build a specific module in a Maven multi-module project without encountering dependency errors?

Construindo um módulo específico em um projeto multimódulo Maven

Em um projeto multimódulo Maven, compilar todos os submódulos pode ser alcançado usando mvn compile no projeto pai. No entanto, surgem desafios ao executar comandos específicos para submódulos individuais.

Por exemplo, empacotar uma guerra para o projeto B em um projeto com submódulos A, B e C (onde B e C dependem de A) resulta em erros devido à falta de dependências.

Para resolver isso, o Maven fornece opções avançadas de reator:

  • -pl, --projects: Construa projetos de reator especificados em vez de todos projetos
  • -am, --also-make: se uma lista de projetos for especificada, crie também os projetos exigidos pela lista

Melhores práticas

Para empacotar o projeto B junto com seus módulos necessários, use o seguinte comando no diretório do projeto pai:

mvn install -pl B -am

Este comando irá construir o projeto B e todos os módulos dos quais depende. Observe que se o artefatoId do projeto for diferente do nome do diretório, a sintaxe de dois pontos deverá ser usada, como em:

mvn install -pl :B -am
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3