
Instalación paso a paso de Maven
-
Primero, necesitamos instalar Maven. Descárgala desde este enlace .
-
A continuación, descomprima el archivo descargado y establezca la variable de entorno M2_HOME en la ubicación del archivo descomprimido. Por ejemplo, C:\\Archivos de programa\\maven\\
-
Para asegurarse de que todo esté instalado, ejecute lo siguiente en la línea de comando:
mvn -versión
-
Si se muestra la información de la versión de Maven, Java, etc., entonces todo está listo para funcionar.
-
Ahora abra IntelliJ IDEA y cree un nuevo proyecto. En la primera ventana, seleccione Maven:
-
Haga clic en "Siguiente" y complete la ventana que aparece:
-
Luego, como siempre, crea un proyecto donde quieras.
Una vez creado el proyecto, tome nota de su estructura:
- la carpeta src/main/java contiene las clases de Java
- la carpeta src/main/resources contiene los recursos utilizados por la aplicación (páginas HTML, imágenes, hojas de estilo, etc.)
- la carpeta src/test es para pruebas
Administrar dependencias en Maven
Es posible que te hayas encontrado con la frase "administrador de dependencias". Maven sabe cómo administrar las dependencias. Gracias a Maven, no tiene que pasar mucho tiempo buscando en Internet una biblioteca requerida, descargándola y luego conectándola a su proyecto. En su lugar, simplemente agrega la biblioteca requerida a la lista de dependencias en Maven.Las dependencias se especifican en el nodo de dependencias del archivo pom.xml
Supongamos que necesita la biblioteca Apache Commons IO en su proyecto para simplificar el trabajo con archivos. Para agregar una biblioteca, escribimos cinco líneas en pom.xml:<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.6</version>
</dependency>
Ahora su archivo pom.xml debería verse así:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>example.com</groupId>
<artifactId>example</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.6</version>
</dependency>
</dependencies>
</project>
Después de eso, permita que IntelliJ IDEA importe la dependencia (debe aparecer un cuadro de diálogo en la esquina inferior derecha). Ahora la biblioteca está lista para usar:
import org.apache.commons.io.FileUtils;
import java.io.File;
public class TestMaven {
public static void main(String[] args) {
File tempDirectory = FileUtils.getTempDirectory();
}
}
Todas las dependencias posteriores también deben escribirse dentro de la <dependencies>
etiqueta. Quizás se esté preguntando cómo encontrar la información sobre la biblioteca que necesita indicar dentro de la <dependency>
etiqueta. Eso es fácil. Siempre se deben configurar tres parámetros: "groupId", "artifactId" y "version". Hay dos formas de determinar estos parámetros:
-
En la web de la biblioteca. Si necesitamos la biblioteca Apache Commons IO, vamos al sitio web oficial y seleccionamos la pestaña "Información de dependencia". Toda la información necesaria está aquí ; simplemente puede copiarla y agregarla al
<dependencies>
nodo. -
En un repositorio Maven . Ingrese "apache commons io" en la barra de búsqueda y verá todas las versiones disponibles de la biblioteca. Después de seleccionar el correcto, simplemente copie lo siguiente:
<dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>2.6</version> </dependency>
y agréguelo a su pom.xml.
Tipos de repositorios Maven
Vale la pena que mencionemos los repositorios de Maven nuevamente, porque en realidad tenemos dos: un repositorio remoto (central) y un repositorio local (en su computadora). Todas las bibliotecas que agrega a sus proyectos se guardan en el repositorio local. Cuando Maven agrega una dependencia requerida a un proyecto, primero verifica si la biblioteca ya existe en el repositorio local. Accede al repositorio remoto solo si no encuentra la biblioteca localmente. Como puede ver, puede usar Maven para agregar dependencias, pero esto no es todo lo que puede hacer.Construyendo un proyecto Java usando Maven
Esta capacidad puede parecer inútil para un principiante. ¿Por qué necesitamos esto si tenemos un IDE? Dejame explicar. En primer lugar, el servidor en el que debe construir su aplicación puede no tener un entorno de desarrollo ni una interfaz gráfica. En segundo lugar, en proyectos grandes, Maven hace un mejor trabajo al construir el proyecto. Entonces, sin más preámbulos, consideraremos el proceso de creación de una aplicación usando Maven.Etapas
El proceso de creación de una aplicación se conoce como el ciclo de vida de un proyecto Maven y consta de fases. Puede verlos en IDEA haciendo clic en Maven > ejemplo > Ciclo de vida en la esquina superior derecha:
- clean: elimina todos los archivos compilados del directorio de destino (el lugar donde se guardan los artefactos terminados)
- validar: verifica si toda la información requerida para construir el proyecto está presente
- compile — compila archivos de código fuente
- prueba: inicia las pruebas
- paquete: paquetes de archivos compilados (en un archivo JAR, WAR, etc.)
- verificar: verifica si el archivo empaquetado está listo
- install: coloca el paquete en el repositorio local. Ahora puede ser utilizado por otros proyectos como una biblioteca externa
- sitio: crea la documentación del proyecto
- desplegar: copia el archivo construido en el repositorio remoto
-
a través de la línea de comando:
paquete mvn
-
usando IntelliJ IDEA:
Antes de que comience la fase del paquete, se realizan las fases de validación, compilación y prueba. La fase limpia es una excepción. Es una buena idea ejecutar esta fase antes de cada compilación del proyecto. Puede enumerar varias fases, separándolas con espacios:
paquete limpio mvn.
Complementos
Para agregar un complemento de Maven al proyecto, debemos agregar su descripción al archivo pom.xml, usando las etiquetas<build>
y <plugins>
, de manera similar a como agregamos las dependencias. Por ejemplo, supongamos que necesitamos un complemento para verificar que estamos usando la última versión de todas nuestras bibliotecas externas. Después de buscar un poco en Internet, puede encontrar este complemento e instrucciones sobre cómo usarlo. Configuremos el ID de grupo, el ID de artefacto y la versión. Te indicaremos qué objetivos debe cumplir el plugin y en qué fase. En nuestro caso, la verificación de dependencia en el pom.xml actual está configurada para que ocurra durante la fase de validación. Ahora nuestro archivo pom.xml se ve así:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>example.com</groupId>
<artifactId>example</artifactId>
<version>1.0-SNAPSHOT</version>
<build>
<plugins>
<plugin>
<groupId>com.soebes.maven.plugins</groupId>
<artifactId>uptodate-maven-plugin</artifactId>
<version>0.2.0</version>
<executions>
<execution>
<goals>
<goal>dependency</goal>
</goals>
<phase>validate</phase>
</execution>
</executions>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.6</version>
</dependency>
</dependencies>
</project>
Podríamos seguir trabajando en nuestro proyecto. Pero intentemos cambiar la versión de Apache Commons IO a 2.0 y construir el proyecto. Nosotros recibiremos
[ERROR] Failed to execute goal com.soebes.maven.plugins:uptodate-maven-plugin:0.2.0:dependency (default) on project example: There is a more up-to-date version ( 2.6 ) of the dependency commons-io:commons-io:2.0 available. -> [Help 1]
Aquí tenemos un error de compilación generado por el complemento. El mensaje de error indica que estamos usando la versión 2.0 cuando la versión 2.6 está disponible. Básicamente, Maven es una herramienta muy útil. Quizás te parezca difícil de usar al principio, ¡pero practica! Crea tus proyectos usando Maven, y después de un tiempo estarás muy satisfecho con el resultado final. Este artículo omitió deliberadamente muchos detalles sobre Maven; nos enfocamos en los más esenciales. Pero no hay límite para la mejora: puedes leer más sobre Maven en su sitio web oficial . Parte 5. Servlets y la API de Java Servlet. Escribiendo una aplicación web simple Parte 6. Contenedores de Servlet Parte 7. Introducción al patrón MVC (Modelo-Vista-Controlador)
GO TO FULL VERSION