Saltar al contenido principal

TP1.2 — Instalación de Maven 3.9.x

Objetivos​

Este trabajo práctico le permitirá:

  • Instalar Apache Maven 3.9.x en su sistema operativo
  • Configurar las variables de entorno necesarias
  • Verificar que la instalación funciona correctamente
  • Comprender el rol de Maven en un proyecto Spring Boot

Duración estimada: 30-45 minutos


¿Por qué Maven?​

Apache Maven es la herramienta estándar de build para proyectos Java y Spring Boot. Gestiona:

  • Las dependencias: descarga automática de las librerías necesarias
  • El build: compilación, pruebas, empaquetado de la aplicación
  • El ciclo de vida: clean → compile → test → package → install → deploy
Su código Java  ──►  Maven  ──►  Aplicación lista (.jar)
│
├── Descarga las dependencias
├── Compila el código
├── Ejecuta las pruebas
└── Crea el archivo .jar
Versión recomendada

Utilizamos Maven 3.9.x por su compatibilidad óptima con Java 17+ y Spring Boot 3.x.


Prerrequisitos​

Antes de instalar Maven, debe tener Java JDK 17 o superior instalado.

Verificar Java​

java -version

Resultado esperado (ejemplo):

openjdk version "17.0.x" 2024-xx-xx
OpenJDK Runtime Environment ...
OpenJDK 64-Bit Server VM ...

Si Java no está instalado, consulte nuestra guía detallada:

👉 TP: Instalación de Java JDK 17

O descárguelo directamente desde:


Instalación en Windows​

Paso 1: Descargar Maven​

  1. Vaya a https://maven.apache.org/download.cgi
  2. Descargue el archivo Binary zip archive: apache-maven-3.9.9-bin.zip
Enlace directo

apache-maven-3.9.9-bin.zip

Si la versión 3.9.9 ya no está disponible, tome la última versión 3.9.x en la página de descargas.

Paso 2: Extraer el archivo​

  1. Cree una carpeta C:\Program Files\Maven (o C:\maven)
  2. Extraiga el contenido del ZIP en esta carpeta
  3. Debería tener: C:\Program Files\Maven\apache-maven-3.9.9
C:\Program Files\Maven\
└── apache-maven-3.9.9\
├── bin\
│ ├── mvn.cmd ← El ejecutable de Maven
│ └── mvnDebug.cmd
├── boot\
├── conf\
│ └── settings.xml
└── lib\

Paso 3: Configurar la variable MAVEN_HOME​

  1. Abra el menú Inicio → escriba "variables de entorno"
  2. Haga clic en "Editar las variables de entorno del sistema"
  3. Haga clic en "Variables de entorno..."
  4. En Variables del sistema, haga clic en Nuevo:
    • Nombre de la variable: MAVEN_HOME
    • Valor de la variable: C:\Program Files\Maven\apache-maven-3.9.9
  5. Haga clic en OK

Paso 4: Agregar Maven al PATH​

  1. En Variables del sistema, busque la variable Path
  2. Haga clic en Editar
  3. Haga clic en Nuevo
  4. Agregue: %MAVEN_HOME%\bin
  5. Haga clic en OK para cerrar todas las ventanas

Paso 5: Verificar la instalación​

Cierre todos los terminales abiertos, luego abra un nuevo terminal (CMD o PowerShell):

mvn -version

Resultado esperado:

Apache Maven 3.9.9 (8e8579a9e76f7d015ee5ec7bfcdc97d260186937)
Maven home: C:\Program Files\Maven\apache-maven-3.9.9
Java version: 17.0.x, vendor: Eclipse Adoptium
Default locale: fr_CA, platform encoding: UTF-8
OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"
Importante

Si mvn no es reconocido después de configurar el PATH, reinicie su terminal o incluso su computadora. Las variables de entorno no se recargan en los terminales ya abiertos.

Alternativa Windows: Instalación con Chocolatey​

Si tiene Chocolatey instalado, la instalación es más sencilla:

choco install maven --version=3.9.9

Alternativa Windows: Instalación con Scoop​

Si tiene Scoop instalado:

scoop install maven

Instalación en macOS​

Opción 1: Homebrew (Recomendado)​

Homebrew es el gestor de paquetes más popular en macOS.

Instalar Homebrew (si aún no lo tiene):

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Instalar Maven:

brew install maven

Verificar:

mvn -version
tip

Homebrew instala automáticamente la última versión estable de Maven 3.9.x y configura el PATH por usted.

Opción 2: Instalación manual​

Paso 1: Descargar Maven​

cd ~/Downloads
curl -O https://dlcdn.apache.org/maven/maven-3/3.9.9/binaries/apache-maven-3.9.9-bin.tar.gz

Paso 2: Extraer el archivo​

sudo mkdir -p /opt/maven
sudo tar -xzf apache-maven-3.9.9-bin.tar.gz -C /opt/maven

Paso 3: Configurar las variables de entorno​

Abra su archivo de perfil de shell:

Para zsh (macOS por defecto desde Catalina):

nano ~/.zshrc

Para bash:

nano ~/.bash_profile

Agregue las siguientes líneas al final del archivo:

# Apache Maven
export MAVEN_HOME=/opt/maven/apache-maven-3.9.9
export PATH=$MAVEN_HOME/bin:$PATH

Guarde (Ctrl+O, Enter, Ctrl+X), luego recargue el perfil:

source ~/.zshrc

Paso 4: Verificar​

mvn -version

Resultado esperado:

Apache Maven 3.9.9 (8e8579a9e76f7d015ee5ec7bfcdc97d260186937)
Maven home: /opt/maven/apache-maven-3.9.9
Java version: 17.0.x, vendor: Eclipse Adoptium
...
OS name: "mac os x", ...

Opción 3: SDKMAN!​

SDKMAN! es una herramienta que gestiona las versiones de Java, Maven, Gradle, etc.

# Instalar SDKMAN!
curl -s "https://get.sdkman.io" | bash
source "$HOME/.sdkman/bin/sdkman-init.sh"

# Instalar Maven
sdk install maven 3.9.9

Instalación en Linux​

Opción 1: Gestor de paquetes (Ubuntu/Debian)​

sudo apt update
sudo apt install maven
Atención a la versión

Los repositorios oficiales de Ubuntu/Debian pueden contener una versión antigua de Maven. Verifique la versión instalada:

mvn -version

Si la versión es inferior a 3.9, prefiera la instalación manual a continuación.

Opción 2: Instalación manual (Recomendado)​

Paso 1: Descargar Maven​

cd /tmp
wget https://dlcdn.apache.org/maven/maven-3/3.9.9/binaries/apache-maven-3.9.9-bin.tar.gz

Paso 2: Extraer e instalar​

sudo mkdir -p /opt/maven
sudo tar -xzf apache-maven-3.9.9-bin.tar.gz -C /opt/maven

Paso 3: Configurar las variables de entorno​

Cree un archivo de configuración de Maven:

sudo nano /etc/profile.d/maven.sh

Agregue el siguiente contenido:

#!/bin/bash
export MAVEN_HOME=/opt/maven/apache-maven-3.9.9
export PATH=$MAVEN_HOME/bin:$PATH

Haga el archivo ejecutable y cárguelo:

sudo chmod +x /etc/profile.d/maven.sh
source /etc/profile.d/maven.sh

Paso 4: Verificar​

mvn -version

Resultado esperado:

Apache Maven 3.9.9 (8e8579a9e76f7d015ee5ec7bfcdc97d260186937)
Maven home: /opt/maven/apache-maven-3.9.9
Java version: 17.0.x, vendor: Eclipse Adoptium
...
OS name: "linux", ...

Opción 3: SDKMAN! (también funciona en Linux)​

curl -s "https://get.sdkman.io" | bash
source "$HOME/.sdkman/bin/sdkman-init.sh"

sdk install maven 3.9.9

Opción 4: Fedora / CentOS / RHEL​

sudo dnf install maven

Verificación final (todos los sistemas operativos)​

Después de la instalación, abra un nuevo terminal y ejecute estos comandos:

# Verificar Java
java -version

# Verificar Maven
mvn -version

# Verificar que JAVA_HOME está definido
echo $JAVA_HOME # macOS/Linux
echo %JAVA_HOME% # Windows CMD
$env:JAVA_HOME # Windows PowerShell

Resultado esperado​

Debe ver:

  • Java: versión 17 o superior
  • Maven: versión 3.9.x
  • JAVA_HOME: apunta a su instalación de JDK
Si JAVA_HOME no está definido

Maven necesita la variable JAVA_HOME. Si no está definida:

Windows: Agregue JAVA_HOME en las variables de entorno del sistema, apuntando a su carpeta JDK (ej: C:\Program Files\Eclipse Adoptium\jdk-17.0.x)

macOS/Linux: Agregue en su ~/.zshrc o ~/.bashrc:

export JAVA_HOME=$(/usr/libexec/java_home -v 17)   # macOS
export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64 # Linux (la ruta puede variar)

Prueba de Maven: Primer build​

Para confirmar que Maven funciona, creemos un proyecto de prueba:

mvn archetype:generate \
-DgroupId=com.test \
-DartifactId=test-maven \
-DarchetypeArtifactId=maven-archetype-quickstart \
-DarchetypeVersion=1.4 \
-DinteractiveMode=false

Si Maven descarga las dependencias y muestra BUILD SUCCESS, su instalación está completa.

cd test-maven
mvn clean package
[INFO] BUILD SUCCESS
[INFO] Total time: X.XXX s

Puede eliminar esta carpeta de prueba:

cd ..
rm -rf test-maven # macOS/Linux
rmdir /s /q test-maven # Windows CMD

Resumen de comandos por sistema operativo​

AcciónWindowsmacOS (Homebrew)Linux (Manual)
InstalarDescargar ZIP + configurar PATHbrew install mavenwget + extraer + PATH
Configurar PATHVariables de entorno del sistemaAutomático/etc/profile.d/maven.sh
Verificarmvn -versionmvn -versionmvn -version
ActualizarVolver a descargarbrew upgrade mavenVolver a descargar

Resolución de problemas​

mvn no es reconocido​

CausaSolución
PATH no configuradoAgregar MAVEN_HOME/bin al PATH
Terminal no recargadoCerrar y volver a abrir el terminal
Ruta incorrectaVerificar que la carpeta bin de Maven existe en la ruta configurada

JAVA_HOME is not defined correctly​

CausaSolución
JAVA_HOME no definidoDefinir la variable de entorno JAVA_HOME
JAVA_HOME apunta al JREApuntar al JDK (no al JRE)
Espacio en la rutaUsar comillas: "C:\Program Files\Java\jdk-17"

Maven descarga lentamente​

El primer build de Maven descarga muchas dependencias en la carpeta ~/.m2/repository. Es normal y solo ocurre una vez.


Lista de verificación​

Antes de pasar al Módulo 2, asegúrese de que todo esté en orden:

  • Java 17+ instalado y java -version funciona
  • Maven 3.9.x instalado y mvn -version funciona
  • JAVA_HOME está definido correctamente
  • La prueba mvn archetype:generate funcionó
  • Visual Studio Code instalado con las extensiones de Java

Próximos pasos​

¡Su entorno está listo! Ahora puede pasar al Módulo 2:

➡️ Módulo 2: Primeros Pasos con Spring Boot


⬅️ Volver al Módulo 1