Maven es una herramienta de software para la gestión y construcción de proyectos Java. Es similar en funcionalidad a Apache Ant, pero tiene un modelo de configuración de construcción más simple, basado en un formato XML. Maven utiliza un archivo POM (Project Object Model) para describir el proyecto y sus dependencias externas. Esas dependencias se pueden descargar desde un repositorio (Maven 2). También tiene una cache local que nos permite publicar nuestra dependencia (librería) para usarla desde otro proyecto en la misma máquina.
Ya que tenemos una idea de lo que es Maven, procedemos con la instalación, para esto haremos uso de nuestra terminal, lo primero que debemos hacer es validar que tenemos configurada nuestra variable de entorno JAVA_HOME con el siguiente comando:
echo $JAVA_HOME
El cual nos mostrará la ruta de nuestro JDK.
Para comprobar si ya tenemos instalado Maven podemos ejecutar el comando mvn, en caso de no contar con la instalación nos mostrará un mensaje como el siguiente:
Una vez comprobado que tenemos nuestra variable de entorno configurada y aún no tenemos instalado Maven, en la terminal ejecutamos el siguiente comando:
sudo apt-get update
El cual nos actualizará la lista de paquetes disponibles.
Una vez hecho lo anterior, realizamos la instalación con el siguiente comando:
sudo apt-get install maven
Una vez termine la instalación ya podremos ejecutar el comando mvn, el cual nos servirá para construir nuestros proyectos ó bajar las librerías. Para conocer la versión que se nos ha instalado podemos ejecutar el siguiente comando:
mvn –version
Con esto ya tenemos instalado Maven, ahora si queremos construir un proyecto podemos ejecutar el siguiente comando:
mvn clean package
Dónde clean limpiará nuestra carpeta target, y package realizará la compilación y construcción, generando el archivo jar o en su defecto war, dependiendo de la configuración que tengamos en el archivo POM.
Con el comando anterior se realizará un test del proyecto, por lo que en el caso de que estemos compilando para un ambiente distinto en nuestra máquina puede que el proceso falle, en esos casos podemos omitir las pruebas agregando el siguiente parámetro al comando -DskipTests, con lo cual ya no tendríamos problema alguno.
mvn clean package -DskipTests