Al manejar un proyecto con Maven es muy comun encontrarse con que nuestro proyecto no se integra demasiado bien con todas caracteristicas que ofrecen los IDEs. Si estamos desarrollando aplicaciones web vamos a tener problemas tratando de que Netbeans o Eclipse se aviven de que necesitamos usar los servers del IDE para debugear y al final terminamos haciendo todo a traves de los goals de maven, lo cual no siempre es muy cómodo.
En Eclipse hay una forma de poder usar el ‘run on server’ (alt+shift+X,R) directamente desde nuestro proyecto Maven y consiste en incorporar el Plugin que da soporte a Eclipse Web Tools Platform al pom.xml del proyecto.
Receta:
1- Crear el proyecto de maven como normalmente lo hariamos. Por ejemplo con un archetype de myfaces
$ mvn archetype:create -DgroupId=ar.com.mgaravaglia -DartifactId=testWebApp -DarchetypeGroupId=org.apache.myfaces.build -DarchetypeArtifactId=myfaces-archetype-helloworld
2- Modificar el archivo pom.xml creado agregando la referencia al plugin maven-eclipse-plugin en el elemento build
maven-eclipse-plugin 2.0 true true true true [artifactId]-[version] ${basedir}/src/main/resources/META-INF/MANIFEST.MF
3- Generar el proyecto de eclipse desde maven.
$ mvn eclipse:clean; mvn eclipse:eclipse
4- Una vez dentro de eclipse importar el proyecto como un maven project.
5- Ejecutar y Debuggear a gusto en el tomcat instalado en eclipse usando el ‘Run on Server’
One Comment
Me ha gustado mucho este post pero me ha surgido una duda.
Si se realizaran cambios en el proyecto y queremos que se muestren en Eclipse, ¿sería necesario ejecutar el paso 3:
mvn eclipse:clean; mvn eclipse:eclipse?