PROYECTO WEB CON MAVEN EN ECLIPSE

Cómo crear un Proyecto Web con Maven en Eclipse y cómo añadir dependencias al pom.xml

Hola que tal, en esta entrada vamos aprender como crear un proyecto web con maven en Eclipse y como añadir dependencias para nuestro proyecto.

Nota: Si te interesa seguir el tema de programación Web con Java, puedes revisar mi Curso de Programación Java Web, con JSP, Servlet y JPA donde aprenderás paso a paso como desarrollar aplicaciones web con Java.

Qués es Maven?

En palabras simples Maven es una herramienta que permiten construir y gestionar proyectos en Java.

Permite crear proyectos a través de arquetipos y que no son más que esqueletos de proyectos o plantillas si se lo quiere llamar, con lo que el proyecto viene listo para empezar a codificar.

Además de lo anterior, permite también añadir librerías al proyecto de una manera menos compleja.

Por lo general cuando se usa una librería en nuestro proyecto, lo que se hace es descargar el archivo  (.jar) y añadirlo al proyecto, utilizando Maven esto cambia totalmente.

Maven gestiona las librerías (conocidas como dependencias) de nuestro proyecto a través de un archivo llamado pom.xml, y no es necesario descargarlas, sino que únicamente se las añade al archivo pom.xml.

Una vez añadida una dependencia, Maven se encarga de acceder a un repositorio y descargar automáticamente los jar necesarios para el proyecto. Así de fácil.

La sintaxis que se utiliza para agregar una dependencia es la siguiente:

En este caso he añadido el driver JDBC  version 5.02 para MySQL, lo que hace internamente Maven es descargar el arhivo .jar y añadirlo a nuestro proyecto.

Como crear un Dynamic Web Project (Proyecto Web) con Maven

En versiones anteriores se utilizaba un plugin para utilizar Maven en Eclipse, pero en la versión Neon Release (4.6.0), que es la que vamos a utilizar, ya viene por defecto.

A continuación voy ha mostrar una serie de imágenes que describen la creación de un proyecto junto con algunas configuraciones básicas que debes saber.

Como crear el proyecto.

Proyecto Web con Maven en Eclipse

Como había mencionado Maven permite crear un proyecto a partir de plantillas predefinidas, en la siguiente imagen hay algunas cuantas que podemos utilizar, las plantillas que se muestra en la imagen vienen junto con la instalación por defecto en Eclipse, pero también podemos obtener más a partir de un catálogo remoto.

Para el ejemplo, vamos a utilizar un repositorio remoto, ya que la plantilla que buscamos y que es una plantilla para empezar a programar con JSP y Servlet, no se encuentra en las instaladas por defecto.

Por lo que debes dar click en el botón Configure.

Proyecto Web con Maven en Eclipse

Añadir un Catálogo Remoto

Un catálogo remoto permite obtener algunas plantillas de proyectos que no vienen con la opción predefinida.

En esta pantalla debes dar click en Add Remote Catalog.

Proyecto Web con Maven en Eclipse

Te mostrará la siguiente pantalla en la que debes ingresar un nombre como descripción y la url donde se encuentra el recurso.

Copia y pega la url: https://maven.apache.org/archetype/maven-archetype-plugin/specification/archetype-catalog.html.

Finalmente das click en OK.

Proyecto Web con Maven en Eclipse

En la siguiente imagen te indica que ha sido añadido y das en click en OK.

Proyecto Web con Maven en Eclipse

Ahora que ya tenemos más plantillas o arquetipos como también se les conoce.

Ahora podemos acceder a más plantillas, para lo cual en el campo Filter, ponemos el nombre de la plantilla que queremos usar,  para el ejemplo y como queremos un arquetipo que nos permita desarrollar con JSP y Servlet, ponemos j2ee.

Se nos muestra varios esqueletos de proyectos Web en Java que podemos elegir, eliges el que se muestra en el recuadro rojo y das click en Next.

Proyecto Web con Maven en Eclipse

La estructura del proyecto debe quedar como se ve a continuación

Proyecto Web con Maven en Eclipse

Como puedes ver la versión de Java con la que se crea el proyecto es la 1.4, lo que vamos hacer es cambiarla a la 1.8, para esto debes dar doble click en el archivo pom.xml en ir a la pestaña pom.xml.

Debes ir al elemento <build> en el atributo<source> que debe tener por defecto 1.4, poner 1.8, así mismo actualizamos la versión de Maven a la 3.0.6 como se muestra a continuación (elemento <version>).

Algo que debes recordar, que cada vez que añadas una dependencia debes actualizar el proyecto para que las dependencias se actualicen, lo haces dando click derecho sobre el proyecto.

Los demás pasos se muestran en la siguiente imagen.

Proyecto Web con Maven en Eclipse

Hay una pantalla que no las muestro, pero lo único que debes dar es OK.

Añadir dependencias en Maven

La manera correcta de añadir dependencias en Maven es recurrir a su repositorio y buscar la versión de la dependencia que queramos utilizar, así mismo se nos muestra la estructura como debe ir, y sólo es cuestión de copiar y pegar dentro del archivo pom.xml. Para esto debes ir al siguiente enlace: MVN repository, para lo cual te presentará la siguiente imagen, como se ve en esta imagen debes poner el nombre de la dependencia que quieras utilizar y luego das click en el boton Search.

Por ejemplo voy agregar el conector de MySQL.

Te aparecerán varios resultados, por lo general se utiliza el de más descargas, lo elijes dando click.

buscar-dependencias-en-mvn-repository

Y te aparecerá las versiones disponibles, puedes escoger la que tu quieras, para el ejemplo elijo la 6.0.0.

versiones-de-las-dependencias-en-mvn-repository

En la siguiente imagen te muestra algunos detalles del jar que vas incluir como dependencia, de hecho lo puedes bajar como .jar, pero lo que queremos es añadirlo como dependencia, para esto seleccionas y lo copias, como se ve en la imagen.

detalle-y-estructura-de-como-agregar-la-dependencia-al-pom

Posteriormente lo pegas en el archivo pom.xml, dentro del elemento <dependencies>, además también actualizamos las dependencias correspondientes al servlet y al jsp.

Y de esa forma, es como se añaden las dependencias que necesites para tu proyecto.

Cambiar la versión del descriptor web.xml

Bien, si te vas a la carpeta del proyecto Deployed Resources->WEB-INF encontrarás el archivo web.xml. Si lo abres puedes ver que contiene en la cabecera la versión o un número que dice 2.4, esto se debe a que al crear el proyecto la versión por defecto del Servlet era la 2.4.

Pero si recuerdas que modificamos las dependencias y actualizamos a la versión Servlet 3.1 y para esta versión se elimina el descriptor web.xml, puesto que todo se lo puede hacer con anotaciones, sin embargo hay ocasiones en que el descriptor web.xml es necesario, entonces no lo eliminamos sino más bien lo actualizamos, por lo que debes añadir en la cabecera el siguiente código (quitar el que menciona la versión 2.4):

Finalmente el archivo completo debe quedar como sigue:

Básicamente con esto tendrías listo el proyecto para empezar a desarrollar con Servlet y Jsp utilizando Maven.

Nota: Si te interesa seguir el tema de programación Web con Java, puedes revisar mi Curso de Programación Java Web, con JSP, Servlet y JPA donde aprenderás paso a paso como desarrollar aplicaciones web con Java.

Si quieres seguir el tema de programación Web con Java, puedes revisar los siguientes enlaces:

Opt In Image
Programación Web Full Stack
Suscríbete ahora y recibe los mejores contenidos sobre Programación Web en tu correo.

Tus datos estarán protegidos y 100% libre de Spam

Full Stack Developer, JavaScript, PHP, Java, Spring, Laravel, Vuejs, Blogger, aprendiendo y compartiendo conocimientos. Cursos de Programación Web en: https://programacionfullstack.com/

Artículos Recomendados

2 Thoughts to “Como crear un Dynamic Web Project (Proyecto Web) con Maven en Eclipse”

  1. abel

    Olvidaste poner la dependencia de maven para las anotaciones, en cuanto creas un servelt salta un error en el IDE que no puede encontrar la clase “import javax.servlet.annotation.WebServlet;” . ¿Sabe usted si hay algún arquetipo en maven para j2EE con versión 8 en el que no sea necesario modificar manualmente el descriptor web.xml ni el pluggin en el pom.xml

    Saludos.

    1. Elivar Largo

      Gracias por tu aporte Abel, de momento sólo he visto que hay arquetipos en los cuales se debe obligatoriamente modificar el archivo web.xml

Dejar un Comentario