viernes, 17 de febrero de 2017

WebJar: Concepto e introducción

A día de hoy en un proyecto web Java podemos llevar el control de las librerías que tenemos en el mismo de una forma muy sencilla, ordenada y cómoda. Gracias todo a software de gestión de proyecto como Maven o Gradle. 

Y tambien a dia de hoy cada vez hacemos más uso de librerias de Javascript que cada vez son más complejas. Y las cuales no son tan dificil de gestionar como las de Java. Para ello han nacido los Webjars. El concepto de WebJar se basa en encapsular en un único jar toda una librería de Javascript, como puede ser Jquery, Angular Js o Bootstrap. 

Esto lo podremos hacer en dos sencillos pasos. Primero, añadiendo la librería que deseemos a nuestro repositorio de dependencias.


<dependency>
 <groupId>org.webjars</groupId>
 <artifactId>bootstrap</artifactId>
 <version>3.3.7</version>
</dependency>

Aqui podemos ver como maven se encarga de añadir también las dependencias que tenga:



Segundo, utilizar la librería a través de las etiquetas html tal y como hariamos si estuviesen fisicamente en nuestra carpeta de recursos. 


<script src="webjars/jquery/1.11.1/jquery.min.js"></script>
<script src="webjars/bootstrap/3.3.7/js/bootstrap.min.js"></script>

De esta forma tan sencilla, podemos tener una mejor gestión de nuestras librerías javascript y evitar que nuestra carpeta de recurso se vuelva una maraña de ficheros .js, .css, etc.

2 comentarios:

  1. Lo primero, enhorabuena por el blog!.

    Quería preguntarte si tienes algún experiencia habiendo usando Webjars y Bower. Y, en ese caso, si tienes alguna preferencia de uno sobre otro (se que esto da para otro post).

    Saludos!.

    ResponderEliminar
    Respuestas
    1. Buenas. Gracias por lo del blog ;-) !

      La verdad es que tengo poca o ninguna experiencia en Webjar. Lo descubrí el otro día y únicamente he implementado un pequeño ejemplo para ver su funcionamiento. El cual me parece genial, y tengo claro que si de mi depende las próximas librerías javascript que use, irán gestionadas así.

      En cuanto a Bower que no lo conocía, y tras lo poco que he visto, te puedo decir que sin duda utilizaría antes Maven. Soy un programador preferentemente de back y Bower veo que esta centralizado sobre todo en la parte front. Y aunque Bower pueda ser más potente para algunas cosas, si voy a tener Maven para gestionar las dependencias Java, no le veo sentido a tener dos gestores distintos.

      Eliminar