Instalar maven
-
Verificar la instalación de Java:
Abre una ventana de “Símbolo del sistema” y Ejecuta
java -version
para comprobar si Java está instalado y verificar su versión. -
Descargar Maven Portable:
Visita la página oficial de Apache Maven y descarga la versión binaria ZIP más reciente de Maven.
-
Extraer los archivos:
Extrae el contenido del archivo ZIP en una carpeta de tu elección.
-
Configurar la variable de entorno
MAVEN_HOME
:Haz clic derecho en “Este equipo” o “Mi PC” y selecciona Propiedades.
Selecciona Configuración avanzada del sistema.
Haz clic en Variables de entorno…
En Variables del sistema, haz clic en Nueva…
Crea una variable llamada
MAVEN_HOME
con el valor de la ruta donde extrajiste Maven (por ejemplo,%UserProfile%\Documents\Environments\Maven
). -
Añadir Maven al
PATH
:En la lista de Variables del sistema, selecciona la variable
Path
y haz clic en Editar….Haz clic en Nuevo y añade
%MAVEN_HOME%\bin
.Haz clic en Aceptar para guardar los cambios.
-
Configurar la variable de entorno
JAVA_HOME
(si no está configurada):En Variables del sistema, haz clic en Nueva…
Crea una variable llamada
JAVA_HOME
con el valor de la ruta donde está instalado Java (por ejemplo,%UserProfile%\Documents\Environments\jdk-XX.X.XX
). -
Verificar la instalación:
Abre una nueva ventana de “Símbolo del sistema” (CMD).
Ejecuta
mvn -version
para comprobar que Maven está instalado y configurado correctamente.
Configuración del repositorio
Maven utiliza un archivo de configuración llamado settings.xml
para gestionar detalles de autenticación y repositorios remotos. Dependiendo de tu caso de uso, el archivo settings.xml
debe colocarse en uno de los siguientes directorios:
-
Instalación específica para un usuario:
Ruta:
${user.home}/.m2/settings.xml
este archivo afecta solo al usuario que lo posee. -
Instalación global para la máquina:
Ruta:
${maven.home}/conf/settings.xml
este archivo afecta a todos los usuarios en la máquina. -
Archivo personalizado
settings.xml
:Puedes especificar un archivo de configuración personalizado cuando ejecutas Maven usando la opción
-s
:Terminal window mvn install -s custom-settings.xml
-
Localizar o crear el archivo
settings.xml
:Ruta global:
{MAVEN_HOME}\conf\settings.xml
. Ruta de usuario:C:\Users\{TuUsuario}\.m2\settings.xml
. Se recomienda usar la ruta de usuario para personalizaciones. -
Editar el archivo
settings.xml
:Abre
settings.xml
en un editor de texto. Si no existe, crea uno nuevo con el siguiente contenido básico:<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0https://maven.apache.org/xsd/settings-1.0.0.xsd"></settings> -
Configurar el repositorio de la empresa:
Dentro del elemento
<settings>
, añade o modifica el bloque<mirrors>
:<mirrors><mirror><id>repositorio-empresa</id><name>Repositorio Maven de la Empresa</name><url>https://repositorio.empresa.com/repository/maven-releases</url><mirrorOf>*</mirrorOf></mirror></mirrors>Esto redirecciona todas las solicitudes de repositorios a tu repositorio corporativo.
-
Verificar la configuración:
Ejecuta mvn help:effective-settings para verificar que Maven reconoce los cambios. Construye un proyecto Maven para comprobar que descarga las dependencias desde el repositorio configurado.
JFrog Artifactory
El archivo settings.xml
tiene diferentes secciones para configurar servidores, repositorios y perfiles. A continuación te explico cada una de las secciones con detalles relevantes.
Con esta template puedes rellenarla con las credenciales que encontraras en tu panel de JFrog.
<?xml version="1.0" encoding="UTF-8"?><settings xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.2.0 http://maven.apache.org/xsd/settings-1.2.0.xsd" xmlns="http://maven.apache.org/SETTINGS/1.2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<!-- Sección de servidores --> <servers> <server> <username>email@empresa.com</username> <password>token</password> <id>central</id> </server> <server> <username>email@empresa.com</username> <password>token</password> <id>snapshots</id> </server> </servers>
<!-- Sección de perfiles --> <profiles> <profile> <repositories> <repository> <snapshots> <enabled>false</enabled> </snapshots> <id>central</id> <name>maven-public</name> <url>https://empresa.jfrog.io/artifactory/maven-public</url> </repository> <repository> <snapshots /> <id>snapshots</id> <name>maven-public</name> <url>https://empresa.jfrog.io/artifactory/maven-public</url> </repository> </repositories>
<!-- Sección de repositorios de plugins --> <pluginRepositories> <pluginRepository> <snapshots> <enabled>false</enabled> </snapshots> <id>central</id> <name>maven-public</name> <url>https://empresa.jfrog.io/artifactory/maven-public</url> </pluginRepository> </pluginRepositories>
<id>artifactory</id> </profile> </profiles>
<activeProfiles> <activeProfile>artifactory</activeProfile> </activeProfiles></settings>
Servers (Servidores): Esta sección define las credenciales de acceso a los servidores de repositorios que usarás. Es importante que las credenciales aquí almacenadas sean seguras, por lo que se recomienda no usar contraseñas planas y en su lugar utilizar tokens de autenticación.
<servers> <server> <username>email@empresa.com</username> <password>token</password> <!-- Usa un token de acceso en lugar de una contraseña --> <id>central</id> <!-- El 'id' debe coincidir con el repositorio al que te estás conectando --> </server></servers>
Profiles (Perfiles):
Un perfil en Maven te permite configurar diferentes comportamientos según el entorno. En este caso, defines un perfil llamado artifactory
que configura tus repositorios de Maven alojados en JFrog Artifactory.
<profiles> <profile> <repositories> <!-- Configuración del repositorio central (no snapshots) --> <repository> <snapshots> <enabled>false</enabled> </snapshots> <id>central</id> <name>maven-public</name> <url>https://empresa.jfrog.io/artifactory/maven-public</url> </repository>
<!-- Configuración del repositorio de snapshots --> <repository> <snapshots /> <id>snapshots</id> <name>maven-public</name> <url>https://empresa.jfrog.io/artifactory/maven-public</url> </repository> </repositories>
<!-- Repositorios de plugins --> <pluginRepositories> <pluginRepository> <snapshots> <enabled>false</enabled> </snapshots> <id>central</id> <name>maven-public</name> <url>https://empresa.jfrog.io/artifactory/maven-public</url> </pluginRepository> </pluginRepositories>
<id>artifactory</id> </profile></profiles>
ActiveProfiles (Perfiles Activos):
Aquí es donde activas el perfil artifactory
que acabas de configurar.
<activeProfiles> <activeProfile>artifactory</activeProfile></activeProfiles>
Seguridad: Usa siempre tokens de acceso en lugar de contraseñas. JFrog te permite generar tokens para que puedas autenticarse de manera segura.
Perfiles personalizados: Si trabajas en diferentes entornos (desarrollo, pruebas, producción), configura perfiles específicos para cada uno, y activa solo el necesario en cada ejecución.
Configuración de Proxy: Si tu red utiliza un proxy, asegúrate de añadir la configuración de proxy en tu archivo settings.xml
:
<proxies> <proxy> <id>proxy_id</id> <active>true</active> <protocol>http</protocol> <host>proxy_host</host> <port>8080</port> <username>proxyuser</username> <password>somepassword</password> <nonProxyHosts>www.google.com|*.example.com</nonProxyHosts> </proxy></proxies>
Artifactory como almacén de dependencias: Una vez que has configurado los repositorios de JFrog en tu settings.xml
, puedes usar Artifactory para descargar dependencias y publicar artefactos.
mvn deploy
Comando para usar configuraciones personalizadas: Si necesitas usar un settings.xml
específico para un proyecto, puedes pasarlo como parámetro al comando de Maven:
mvn clean install -s custom-settings.xml