12 - Ejercicios prácticos

Objetivo del tema

En este tema realizarás ejercicios para reforzar los conceptos aprendidos con Apache Maven, desde la creación de un proyecto básico hasta la configuración de pruebas, multi-módulos y generación de JAR ejecutable.

12.1 Crear un proyecto básico con Maven y compilarlo

  1. Crea un directorio nuevo e invoca el arquetipo maven-archetype-quickstart con mvn -B archetype:generate.
  2. Abre el proyecto generado y revisa la estructura de directorios (src/main/java, src/test/java).
  3. Ejecuta mvn clean package para compilar y generar el JAR en target/.

Objetivo: familiarizarte con el flujo desde la generación hasta la compilación del artefacto.

12.2 Añadir dependencias y probar librerías externas

  1. Agrega una dependencia a com.google.code.gson:gson:2.10.1 en la sección <dependencies>.
  2. Crea una clase que serialice un objeto a JSON usando Gson.
  3. Compila y ejecuta la aplicación con mvn exec:java o desde tu IDE para verificar el uso de la librería.

Objetivo: aprender a incorporar librerías de terceros y verificar su funcionamiento.

12.3 Configurar y ejecutar pruebas unitarias con JUnit

  1. Añade la dependencia org.junit.jupiter:junit-jupiter:5.10.2 con alcance test.
  2. Actualiza maven-surefire-plugin para habilitar JUnit 5 si es necesario.
  3. Escribe una clase de prueba en src/test/java y ejecuta mvn test para validar los resultados.

Objetivo: asegurar la ejecución de pruebas unitarias integradas al ciclo de Maven.

12.4 Crear un proyecto multi-módulo sencillo

  1. Genera un POM padre con <packaging>pom</packaging> y crea carpetas para los módulos api y servicio.
  2. Configura cada módulo con su propio POM, heredando del padre mediante la sección <parent>.
  3. Define una dependencia de servicio hacia api y ejecuta mvn clean install desde el directorio padre.

Objetivo: practicar la relación entre módulos y la compilación integral.

12.5 Generar un JAR ejecutable y correrlo con java -jar

  1. Añade maven-jar-plugin o maven-shade-plugin para definir la clase principal y empaquetar dependencias.
  2. Compila con mvn clean package y comprueba que se genere un JAR ejecutable.
  3. Ejecuta java -jar target/<artifactId>-<version>.jar para validar el funcionamiento.

Objetivo: consolidar conocimientos sobre empaquetado y distribución de aplicaciones.

Resumen didáctico

Estos ejercicios recorren tareas comunes en proyectos Maven: iniciar una aplicación, agregar dependencias, habilitar pruebas, organizar módulos y distribuir artefactos ejecutables. Practicarlos fortalece la comprensión del ciclo de vida y la configuración declarativa del POM.