Java JAR , Java Archive y empaquetamiento

¿Qué es un Java JAR? . Este es una pregunta importante para las personas que trabajan en tecnología Java . Muchas veces hay dudas de para que sirve un fichero JAR o Java Archive. En principio un JAR no es ni más ni menos que un empaquetado zip que contiene un conjunto de clases Java organizadas por packages (carpetas) de forma jerarquica. La peculiaridad que tienen los ficheros JAR es que los podemos reutilizar entre proyectos ya que simplemente son empaquetados.

La estructura interna del fichero JAR es relativamente sencilla

.

Java JAR

Como podemos ver nos encontramos con la estructura de paquetes original que teníamos y dentro de esa estructura se encuentran nuestras clases. Ademas de esta carpeta con los paquetes nos encontramos con la carpeta META-INF que incluye el fichero de Manifiesto (MANIFEST.MF) .Este fichero nos aporta información adicional sobre nuestro fichero JAR. Uno de sus usos más habituales es definir que clase de todas las que tenemos ubicadas en el JAR es la clase que se debe ejecutar como programa principal. Esto  añadiendo las siguientes lineas al fichero.

Manifest-Version: 1.0
Main-Class: com.arquitecturajava.Principal

Estas lineas declaradas en el fichero de Manifiesto permitirá que cuando invoquemos en linea de comandos el siguiente comando

java -jar milibreria.jar

Se ejecute el código de la clase Principal . Hemos revisado  la estructura de un JAR en el siguiente post cubriremos los WAR

Otros artículos relacionados

  1. Modulos de Java (III) Enterprise Archive (EAR)
  2. Modulos de Java (II) Web Archive (WAR)
  3. El concepto de EJB in WAR y su uso
  4. Java Archive