Onde adicionar dependências no projeto multimódulo MAVEN
-
23-12-2019 - |
Pergunta
Estou tentando entender toda a dependência em projetos maven de vários módulos.Como ponto de partida, usei o appfuse para criar um novo projeto multimódulo Spring MVC.Inicialmente possui módulos web e principais.
Encontrei o conhecimento para implantar este projeto.Mas quando recebo um erro.Estou sempre confuso sobre onde adicionar uma dependência ou um plugin.Gostaria de esclarecer com a seguinte questão.
Criei um projeto multimódulo appfuse mvc.Eu instalei o maven core e depois o maven jetty7:run na web (inicialmente executei mvn install na pasta raiz e depois amarrei mvn tomcat:run na mesma pasta.Mas isso deve ser feito conforme abaixo.
- mvn install na pasta principal
- mvn tomcat7: execute na pasta da web
Inicialmente recebi um erro como prefixo ausente "Tomcat7"
.Eu resolvi isso adicionando o seguinte plugin ao pom
em web
.
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.0</version>
</plugin>
E esse erro foi resolvido.Mas eu não tinha certeza disso porque posso adicionar o plugin ao pom pai.Então executei novamente mvn tomcat7:run on web file e agora estou recebendo o seguinte erro.
[INFO] >>> tomcat7-maven-plugin:2.0:run (default-cli) @ test-web >>>
[WARNING] The POM for org.aspectj:aspectjweaver:jar:1.8.0.M1 is missing, no depe
ndency information available
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
Não tenho certeza de onde adicionar a dependência a qual pom.Gostaria de saber alguns princípios básicos de como os poms podem funcionar juntos para fazer a instalação.Por exemplo, também existe um pai pom.Mas não estou fazendo uma instalação mvn nem nada no pom pai.Eu vou ao fundo e faço um mvn install
e então vá para a web e faça um mvn tomcat7:run
Neste caso, como o pom pai contribui para o processo de instalação e destruição?e como devo resolver o aviso acima e resolver o erro.
Alguma resposta informativa é muito apreciada.Obrigado
Solução
Você deve adicionar o plugin Tomcat ao projeto web, pois ele só funcionará em um projeto do tipo "war".Já deve haver um plugin jetty configurado, então "mvn jetty:run" deve funcionar na pasta web.