Maven: 05 – Trabajando con eclipse
Para probar todo esto en eclipse me he bajado el primero que viene en http://www.eclipse.org/downloads/ que pone “Eclipse IDE for Java EE Developers”. Actualmente es el eclipse-jee-mars-2-win32-x86_64.
Me arranca sin problemas ejecutando el exe. Si a alguien no le arranca puede ser porque tenga definida la variable de entorno JAVA_HOME apuntando a un jdk antiguo. Creo que se necesita el 1.7 mínimo. Si no lo tienes instálatelo y si no quieres cambiar la variable JAVA_HOME la puedes especificar en el eclipse.ini.
Eclipse trae su propio maven, no necesitas instalar el maven por tu cuenta.
Los proyectos nuevos los creo así, aunque se pueden crear en el workspace:
- Creo la carpeta donde va estar el proyecto, por ejemplo “miproyecto”
- y en el eclipse voy haciendo lo siguiente




Con esto ya tengo el proyecto, ahora creo por ejemplo un package y una clase dentro de la carpeta java.




Ahora vamos a ver cómo hago las fases que expliqué en el post Maven: 03 – Flujo de trabajo”
Para compilar no hace falta hacer nada puesto que por defecto el eclipse va a compilar las clases de forma automática al guardar una modificación, pero puedes forzarlo con un “Proyect – clean”
Install:

Realmente creo que si tienes todos los proyectos configurados en el eclipse no es necesario que ejecutes un install para que se genere en tu repositorio local, siempre que desde otro proyecto vayas a usar la última versión, ya que el eclipse detectará que lo tienes en el eclipse y en vez de usar las clases que haya en el repositorio local lo que hará será “linkar” a las clases del proyecto dependiente.
Me explico:
Supongamos que el proyecto A tiene como dependencia al protecto B, es decir, el proyecto A usa las clases del proyecto B.
Pues bien, si la versión actual del proyecto B es la 2.0 y en el proyecto A quieres usar esa versión, no haría falta que hagas un install del proyecto B, puesto que si tienes ambos proyectos en el eclipse, lo que hará éste será linkar en el proyecto A las clases del proyecto B.
Pero sin embargo si en el proyecto A quieres usar la versión 1.1 del proyecto B sí que tenías que haber hecho un install del proyecto B con esa versión (cosa que probablemente hayas hecho porque habrás hecho un deploy de la 1.1 y al hacer un deploy se hace también un install).
Deploy:


Con esto publicas el snapshot o el release en los repositorios internos privados (Ver Maven: 02 – Conceptos) para que los pueda usar otro programador.
Package:
Si tu proyecto genera un war y lo quieres probar en el tomcat debes hacer el war con un package


Y después copiar el war del directorio target al webapps del tomcat.