Vraptor + Maven, problema de dependencias

11 respostas
clincks

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

11 Respostas

Lucas_Cavalcanti

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

Lucas_Cavalcanti

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

clincks

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?

clincks

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

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

Lucas_Cavalcanti

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.

Lucas_Cavalcanti

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

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?

clincks

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?

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??

clincks

… edit …

sou burro

Lucas_Cavalcanti

o maven não percebe nada…

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

clincks

Lucas Cavalcanti:
o maven não percebe nada…

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

saquei cara…

ja to entendenco como funciona…

vlw cara… parebens pelo seu trab aqui no forum…

flw

Criado 11 de fevereiro de 2011
Ultima resposta 11 de fev. de 2011
Respostas 11
Participantes 2