Oi pessoal, comecei a dar uma estudada no Maven atualmente e confesso que ainda tenho bastante dúvidas. Ma suma em especial tem me deixado intrigado. Eu criei um projeto WEB com Maven, aquele em que ele cria o pom.xml e os diretórios padrões(webapp, java e resources). Depois disso, fui ver como fazer este projeto usar JSF. Adicionei os repositórias as dependências e pedi para ele instalar tudo(mvn install). Meus jars foram baixados normalmente, porém eu imaginava que ele iria criar arquivos como o facesconfig e coonfigurar o web.xml.
Bem, a minha dúvida afinal é: é possível fazer com que um projeto web criado em Maven seja configurado para usar jsf a pratir de comandos do pŕoprio maven?
Maven: como fazer um Dynamic Web Project usar JSF?
6 Respostas
Sim, através de um archetype.
Instale algum plugin do Maven para eclipse para facilitar.
aí rafa, eu admito não fui muito claro na minha pergunta. Mas vou explicar melhor.
Criei um projeto com maven usando o próprio comando
mvn archetype:create -DgroupId=br.com.mavenjsftutorial -DartifactId=Maven-JSF -DarchetypeArtifactId=maven-archetype-webapp
Daí, tudo bem, projeto criado, tudo ok.
Depois adicionei o repositório e dependência do JSF. executei mvn install, os jars do jsf foram baixados, porém eu percebi que ele não alterou nada do web.xml, nem sequer criou o face-config. essa que era minha dúvida. O maven é capaz de transformar um projeto WEB normal para um projeto WEB que utilize JSF automaticamente ou eu mesmo que tenho que configurar o Web.xml e faces-conig e outras?
neste archetype: maven-archetype-webapp que eu saiba não! :roll:
mas sei que é possível criar sua própia estrutura que contenha o faces-config.xml, web.xml, diretórios, configurações particulares, etc.
Através de um archetype.xml, quando quiser utilizar essa estrutura basta chamar seu archetype, que ele monta tudo.
Inclusive já existe alguns archetypes prontos para JSF, , Struts, Spring…
Como criar um desses:
http://maven.apache.org/guides/mini/guide-creating-archetypes.html
opa grande rafa, vlwzaõ pela dica. não era exatamente o que eu tava querendo agora, mas também tinha esta dúvida se é possível criar o nosso próprio tipo de archetype,a gora eu sei que é possível, vou estudar isso com calma, mas agradeço pela dúvida. Mas se alguém mais puder dar uma luz sobre o maven, eu agradeço pois anda não tá muito claro pra mim o que ele pode ou não fazer.
Legal, não sabia dessa possibilidade de configurar o proprio archetype.
Se vc pesquisar, vai ver que existem centenas de archetype prontos para o uso, com varias (varias mesmo) possibilidades de configurações, abrangendo todos os tipos de projetos (EAR, JAR, WAR) com os mais variadas combinações de tecnologias (ex: JSF+EJB+HIBERNATE, JSF+SEAM+JPA, Struts+Spring+JPA), enfim… muita coisa mesmo, inclusive muitos com uma; poderia dizer… um exemplo… as vezes um sisteminha de login, ou outras coisas, que facilitam o inicio de um projeto.
Muitos deles também com o projeto preparado para o desenvolvimento escrevendo testes unitários e etc…
De uma olhada nos archetype “appfuse”. Existem alguns tão completos, que leva algum tempo para vc estudar e entender como tudo esta “conectado”.
A maneira mais fácil inicialmente, seria instalando plugin maven2eclipse, então ir no menu e criar um “maven project”, vc verá uma listá grande de opçoes!!
MAVEN RULES!!! :lol:
PS: Acho que vale MUITO apena entender e aprender a usar o maven; como usar dependencias, plugins, como usar testes automatizados, gerar site, analise de codigo, cobertura do codigo (pelos testes), pode ser usado com integração contínua, e etc… O maven é a melhor ferramenta ja inventada!!! hehehe
EDITANTO: Aqui para vcs olharam… apenas uma pequena lista
http://docs.codehaus.org/display/MAVENUSER/Archetypes+List
Mas existem muitos mais… e como ja foi dito aqui, é possível vc criar o seu prórprio archetype tb.
[]'s