OpenWebinars

Herramientas

Los troubleshooting mas habituales de Apache Maven

Conoce los problemas más habituales que puedes encontrar utilizando la herramienta Apache Maven y nuestros consejos para evitarlos.  

Carlos Yagüe

Carlos Yagüe

EXPERTO EN ARQUITECTURA DE SOFTWARE

Lectura 3 minutos

Publicado el 2 de mayo de 2019

Compartir

    Tabla de contenidos

Refrescar el IDE si se ha compilado por detrás

Esta tecnología a veces requiere conocer un poco los entresijos de la misma para poder dar solución a los problemas que se nos presenten, y evitar así que el desarrollador se quede bloqueado y que requiera de otra persona con más experiencia para solventarlo.

Maven ofrece soporte a los IDE o compiladores, y funciona con un proceso en background por detrás, que, en determinadas ocasiones, incluso se puede ejecutar por línea de comando, a pesar de que también está integrado en el IDE.

Esto puede provocar que se haya producido una compilación del código, se haya actualizado el directorio de compilado, el directorio target, y Eclipse tiene ese defecto, que tiene mucha capacidad de caché, cachea mucho los recursos del espacio de trabajo, de manera que agiliza ciertas tareas pero tiene ese problema. Debería invalidar esas cachés cuando se produce un cambio por un proceso de ejecución con Maven.

Podríamos suponer que al estar trabajando con Eclipse y tener la opción build automatically activa, el ID por si solo lo va a compilar todo sin ningún problema, pero la realidad es que no siempre lo hace, y hay que invocar la orden del plugin de la integración con Maven, ya sea para hacer un comando package o install.

En el caso de trabajar con proyectos con una jerarquía multi-módulo, cuando hay múltiples dependencias, Eclipse por si solo no siempre es capaz de compilar todo y actualizar los cambios en el resto del proyecto.

Este hecho se evidencia mucho más cuando se está trabajando con un servidor de aplicaciones, un contenedor de servlets, en el que queremos desplegar nuestra aplicación web. Durante la detección de cambios en los puestos dependientes, en ocasiones no se van a publicar dichos cambio.

Por lo tanto, es conveniente refrescar la carpeta de compilación siempre que se haya hecho una operación por detrás.

Para ello hay una solución menos manual, que es utilizar la runtime configuration del plugin M2Eclipse, estableciendo en la pestaña Refresh la posibilidad de que se haga un refresco automático.

Esto se hace desde la opción Run Configurations. Elegimos el proyecto concreto, en este caso es el llamado file-size-viewer, en la pestaña Refresh marcamos la opción “Refresh resources upon completion” y después elegimos la opción “Specific resources”.

Imagen 0 en Los troubleshooting mas habituales de Apache Maven

Elegimos el proyecto correspondiente, y en la carpeta asociada a la aplicación frontend seleccionamos la carpeta target y finalizamos:

Imagen 1 en Los troubleshooting mas habituales de Apache Maven

De esta forma, siempre que se ejecutara runtime configuration, automáticamente se procedería después a hacer un refresh de esos recursos, de manera que mitigamos ese defecto de Eclipse.

Tener presente siempre la configuración del proxy

En muchas ocasiones, cuando se trabaja en determinados clientes, se trabaja con configuraciones de red que no son propias, no son compatibles, y hay que actualizar continuamente.

En estos casos hay que tener presente que en el archivo settings.xml podemos activar un proxy HTTP y optimizar de esta forma el tiempo de resolución del conflicto.

Forzado de actualización de snapshot

En ocasiones, al trabajar con librerías snapshot, puede ser que al descargarla se haya producido un fallo, por un fallo de red o por otro motivo, y sea preciso forzar la actualización.

Para ello Eclipse provee mecanismos a través de la opción de Update Maven Project.

Utilizar las fuentes de librerías para depurar

Finalmente, no hay que olvidar nunca activar la pestaña de descarga de fuentes, para facilitar la depuración del proyecto sin necesidad de tener el proyecto descargado.

Aprende todo lo que necesitas para trabajar con proyectos que usen Apache Maven y conoce las soluciones que hay que usar para resolver los problemas más frecuentes que pueden ocurrir.

cta-blog-curso-maven

Recuerda que puedes comenzar este curso con tu suscripción de OpenWebinars. Si todavía no estás suscrito, aprovecha para hacerlo ahora.

Compartir este post

También te puede interesar

Icono de la tecnología
Curso

Curso de Maven

Intermedio
4 h. y 55 min.

Aprende todo lo que necesitas para trabajar con proyectos que usen Apache Maven y conoce las soluciones que...

Carlos Yagüe
4