Seguimos con Maven. Plantillas.

¡Hola!

Yo sigo erre que erre con Maven. El siguiente paso ha sido crearme una plantilla que contenga la info común en los proyectos Android. Esto es, por supuesto, aplicable a cualquier tipo de proyecto. Los pasos son:

Crear un proyecto nuevo para el POM

En Eclipse creamos un proyecto nuevo de tipo Maven, Maven Project y hacemos clic en siguiente.

Seleccionamos Create a simple project (skip archetype selection) y next.

Introducimos la información del pom. En este caso hablamos de como nos referiremos a nuestra plantilla. Por ejemplo:

  • GroupId: com.sergiandreplace.template
  • ArtifactId: android
  • Version: 0.0.1-SNAPSHOT
  • Packaging: pom <– Aquí está la clave del asunto!!!
  • Name: Android POM template

Por último hacemos clic en Finish y nos creará el proyecto.

Crear el POM base

En este caso, el pom es parecido al que creamos en el último post sobre maven, pero con algunos cambios.

Y con esto tendriamos la plantilla. Básicamente, he extraido los valores que cambian de proyecto en proyecto a variables, y además he creado una sección con valores por defecto.

Para publicarlo en nuestro repo local, tan sólo debemos ejecutar un mvn install y el sólo nos lo añadirá.

Ya tenemos la plantilla lista.

Heredar la plantilla

Ahora en nuestro proyecto Android con maven (recordad el mavenize project) tan sólo necesitamos tener el siguiente pom:

Como veis, aquí le indico, por un lado, de que proyecto hereda la configuración, y por otro lado que valores debe utilizar para las variables. Si  mirais el POM efectivo, vereis que contiene toda la configuración correctamente establecida.

Consideraciones finales

Recordad que si trabajais en equipo, es necesario que todo el mundo tenga las mismas plantillas o la podeis liar muy parda. En ese caso, os recomiendo tener algún repositorio de Maven (p.ej.: Nexus) y tener las plantillas publicadas en el servidor.

El uso de plantillas hace más sencillo el aplicar nuevas configuraciones y opciones a los proyectos existentes, y nos permite configurar los proyectos nuevos de forma más rápida.

Ale, gozadlo.

Leave a Reply