Vraptor + Maven, problema de dependencias

aee,

galera, sou novo no java e estou criando um projeto com vraptor e maven, para rodar no Apache 7.

Fiz da seguinte maneira: (usando windows)

1 - Instalei tudo que precisava.

2 - criei uma pasta pra teste e digitei os comandos:

vraptor new testeppp --build-tool=mvn

mvn eclipse:eclipse

3- importei o projeto no eclipse:

4- rodei a aplicação e consegui esses erros:

11/02/2011 17:30:12 org.apache.catalina.core.AprLifecycleListener init INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Java\jre6\bin;.;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:/Program Files/Java/jre6/bin/client;C:/Program Files/Java/jre6/bin;C:/Program Files/Java/jre6/lib/i386;C:\Program Files\NVIDIA Corporation\PhysX\Common;C:\Program Files\JavaFX\javafx-sdk1.2\bin;C:\Program Files\JavaFX\javafx-sdk1.2\emulator\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL Server\100\DTS\Binn\;C:\Program Files\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\;%QUARTUS_ROOTDIR%\bin;C:\Program Files\TortoiseSVN\bin;c:\Program Files\Microsoft ASP.NET\ASP.NET Web Pages\v1.0\;C:\Program Files\MySQL\MySQL Server 5.5\bin;C:\Program Files\Java\jdk1.6.0_23\bin;C:\Program Files\Apache Software Foundation\apache-maven-3.0.2\bin;C:\Ruby192\bin 11/02/2011 17:30:12 org.apache.tomcat.util.digester.SetPropertiesRule begin AVISO: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:testeppp' did not find a matching property. 11/02/2011 17:30:12 org.apache.coyote.http11.Http11Protocol init INFO: Initializing Coyote HTTP/1.1 on http-8080 11/02/2011 17:30:12 org.apache.coyote.ajp.AjpProtocol init INFO: Initializing Coyote AJP/1.3 on ajp-8009 11/02/2011 17:30:12 org.apache.catalina.startup.Catalina load INFO: Initialization processed in 712 ms 11/02/2011 17:30:12 org.apache.catalina.core.StandardService startInternal INFO: Starting service Catalina 11/02/2011 17:30:12 org.apache.catalina.core.StandardEngine startInternal INFO: Starting Servlet Engine: Apache Tomcat/7.0.2 11/02/2011 17:30:13 org.apache.catalina.core.StandardContext filterStart GRAVE: Exception starting filter sitemesh java.lang.ClassNotFoundException: com.opensymphony.sitemesh.webapp.SiteMeshFilter at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1666) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1511) at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:406) at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:388) at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:117) at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:248) at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:368) at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:98) at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4193) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4801) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:988) at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:771) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:988) at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:275) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139) at org.apache.catalina.core.StandardService.startInternal(StandardService.java:427) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139) at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:649) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139) at org.apache.catalina.startup.Catalina.start(Catalina.java:585) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:415) 11/02/2011 17:30:13 org.apache.catalina.core.StandardContext filterStart GRAVE: Exception starting filter vraptor java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory at br.com.caelum.vraptor.VRaptor.<clinit>(VRaptor.java:60) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) at java.lang.reflect.Constructor.newInstance(Unknown Source) at java.lang.Class.newInstance0(Unknown Source) at java.lang.Class.newInstance(Unknown Source) at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:118) at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:248) at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:368) at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:98) at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4193) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4801) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:988) at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:771) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:988) at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:275) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139) at org.apache.catalina.core.StandardService.startInternal(StandardService.java:427) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139) at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:649) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139) at org.apache.catalina.startup.Catalina.start(Catalina.java:585) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:415) Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1666) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1511) ... 31 more 11/02/2011 17:30:13 org.apache.catalina.core.StandardContext startInternal GRAVE: Error filterStart 11/02/2011 17:30:13 org.apache.catalina.core.StandardContext startInternal GRAVE: Context [/testeppp] startup failed due to previous errors 11/02/2011 17:30:13 org.apache.catalina.loader.WebappClassLoader clearReferencesJdbc GRAVE: The web application [/testeppp] registered the JBDC driver [org.hsqldb.jdbc.JDBCDriver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.

Pelo jeito o maven nao importou as depencias direito neh? (ou não)?? Oo

Tenho esse tanto de warnings tambem, eles são o motivo dos erros?

Para algum desses erros(não lembro o qual), achei em um forum para adicionar essa dependência no meu pom.xml:

		<dependency>
			<groupId>cglib</groupId>
			<artifactId>cglib</artifactId>
			<version>2.2</version>
		</dependency>

Ae tenho uma dúvida, qual comando rodar no maven para ele refazer as dependências do meu projeto?

Obrigadoo

vc precisa adicionar a variável M2_REPO no seu eclipse, apontando pra pasta ~/.m2
(Window > preferences > Classpath variables)

se vc já fez isso que eu falei, dá uma olhada nessa página
http://maven.apache.org/plugins/maven-eclipse-plugin/

procurando por WTP support

Já tinha feito isso…

Outro problema é que o maven incluiu 46 .jars no meu projeto… é isso msm???

Como meu projeto é novo,não uso quase nenhuma dessas bibliotecas. A idéia não era que o maven importasse apenas as que eu uso?

Achei esse link que explica como resolver os warnings mostrados acima:

mas fiquei na dúvida se esse tanto de .jar está certo…

a sua aplicação não usa todos esses jars diretamente, mas usa indiretamente…

por exemplo, pra usar o hibernate com jpa, vc precisa do persistence-api, javassist, e dos hibernate*

para usar o vraptor, vc precisa dos jars que estão nessa pasta: https://github.com/caelum/vraptor/tree/master/vraptor-core/lib/mandatory
e mais os jars do spring, guice ou pico

e assim por diante.

o maven foi feito pra vc declarar menos dependências (jars) não pra vc baixar menos jars…

Valeu a atenção lucas… :smiley:

criei um projeto novo pelo vraptor.

agora usei o comando:

mvn -Dwtpversion=R7 eclipse:eclipse

Verifiquei o M2_REPO e está OK.

fui em Configure Build Path > Order and Export > selecionei todos os jars > Ok.

Rodei e continuo com os mesmos erros mostrados acima e com os 48 warningns.

Alguma ideia?

[quote=clincks]Valeu a atenção lucas… :smiley:

criei um projeto novo pelo vraptor.

agora usei o comando:

mvn -Dwtpversion=R7 eclipse:eclipse

Verifiquei o M2_REPO e está OK.

fui em Configure Build Path > Order and Export > selecionei todos os jars > Ok.

Rodei e continuo com os mesmos erros mostrados acima e com os 48 warningns.

Alguma ideia?

[/quote]

Resolvi…

Adicionei o plugin M2Eclipse e funfou :smiley:

segui esse link: http://m2eclipse.sonatype.org/installing-m2eclipse.html

Bom, msm funcionando ainda estou com uma duvida.

Caso eu use um xxx.jar que esta no repositorio do maven e eu deixe de usa-lo, o maven percebe e tira ele das dependencias do meu projeto automatico??

… edit …

sou burro

o maven não percebe nada…

ele gerencia as dependências pelo que vc declarou no pom.xml

[quote=Lucas Cavalcanti]o maven não percebe nada…

ele gerencia as dependências pelo que vc declarou no pom.xml[/quote]

saquei cara…

ja to entendenco como funciona…

vlw cara… parebens pelo seu trab aqui no forum…

flw