Páginas

jueves, 14 de julio de 2011

Comenzando a usar Maven (V)

Seguimos con el tema Maven...

Integración con Eclipse
Bueno, todo esto está muy bien, pero si yo trabajo con un IDE como eclipse, ¿cómo encuentro ahora los jar en un sitio tan escondido?. Fácil. Maven es capaz de generar un proyecto de Eclipse.
Primero debemos definir dentro de Eclipse la variable M2_REPO apuntando a nuestro repositorio local de Maven. Esto puede hacerse desde una línea de comandos maven:
mvn -Declipse.workspace= eclipse:add-maven-repo
o bien desde dentro de Eclipse. En el menú seleccionamos Window > Preferences. Luego Java > Build Path > Classpath Variables y ahi definimos M2_REPO apuntando a C:\Documents and Settings\usuario\.m2
Una vez que tenemos creado un proyecto maven, generamos los ficheros necesarios para eclipse con
mvn eclipse:eclipse
Esto generará dos ficheros .project y .classpath en el directorio. Ahora desde Eclipse
  • En el menú "File", "Import".
  • En la ventana que sale, elegimos "Existing projects into workspace" y "Next".
  • Elegimos "Select root directory" y le damos a "Browse". 
  • Elegimos el directorio de maven donde está nuestro proyecto. Con esto debería compilarse el proyecto, cogiendo los jar necesarios del repositorio local y todo lo demás.
También hay plugins en nuestros IDE's que hacen más fácil el trabajo con maven, de forma que desde nuestro IDE podamos ejecutar las tareas maven.
En codehaus tienes los plugins para los cuatro IDEs más conocidos: Eclipse, NetBeans, IntelliJ y JBuilder.


Llevar nuestro jar a los repositorios maven
Si queremos meter nuestro jar en el repositorio maven de jars local, es así de sencill:
mvn install
Esto compilará si es necesario nuestros fuentes, les pasará los test, generará el jar y lo copiará en nuestro repositorio local de jars, en nuestro pc. Esta operación hace que ese jar esté disponible para otros proyectos maven que tengamos en nuestro ordenador. Es útil, por tanto, para proyectos maven que sean librerías nuestras que queramos usar en varios proyectos.
Si hemos configurardo un repositorio en red común a varios programadores en varios ordenadores, el comando es igual de simple
mvn deploy
Esto hace todo lo que hace install, incluido el install y luego pone nuestro jar en ese repositorio común en red. Esto lo pone a disposición de todos los programadores del equipo.
Lo de -SNAPSHOT en la versión tiene aquí su gracia. Si dependemos de un jar que tenga -SNAPSHOT, cada vez que compilemos, aunque ese jar esté en nuestro repositorio local, maven ira a buscarlos a los repositorios comunes o de internet, para ver si hay una versión de fecha más moderna. Si la hay, se la bajará. Por tanto, suele ser útil en un equipo de trabajo mantener la "coletilla" -SNAPSHOT en los jar que todavía están en desarrollo y sufren cambios frecuentes.
Si no ponemos -SNAPSHOT, una vez bajado el jar a nuestro repositorio local, maven NO se preocupará de buscar si hay versiones más modernas en los repositorios remotos.

Generar documentación
Generar el javadoc es fácil. Lo primero es que debemos editar el fichero pom.xml para indicarle que queremos este tipo de documentación. Puede quedar así  

 Luego ya es sencillo. Basta ejecutar

mvn javadoc:javadoc
y maven nos generará en target un directorio target\site\apidocs y dentro de él metera el javadoc. Si ejecutamos
mvn site:site
generará en target\site una documentación web por defecto, incluido el javadoc. Por supuesto, en el pom.xml y en algunos ficheros adicionales de configuración se podría personalizar. El aspecto de esa documentación por defecto puedes verlo en la página de maven, ya que por supuesto, la web de maven ha sido generada con maven.


Podéis ver todos los posts relacionados en los siguientes enlaces:




No hay comentarios:

Publicar un comentario