====== Ficheros Jar ====== Jar son las siglas de **J**ava **AR**chive, y es un tipo de fichero en el que podemos empaquetar las aplicaciones Java o empaquetar distintas clases. Son archivos comprimidos en formato **.zip** y cambiada su extensión a .jar. Así no tenemos que llevar nuestras carpetas y archivos sueltos de un lugar a otro. Dentro de un fichero JAR podemos empaquetar todos los recursos que tiene nuestro proyecto: ficheros .class, otras librerías, imágenes, y todo lo que esté en los directorios de nuestro proyecto. En el directorio //bin// del JDK de Java tenemos el programa //jar// de java para crear estos ficheros, aunque también podemos crearlos desde el IDE para Java con el que trabajemos. ===== Generar Jar en Eclipse ===== En Eclipse: **File → Export → Java -> JAR File o Runnable JAR File** * ** Fichero Jar Ejecutable con programa consola**: Si lo que quiero es obtener mi programa en un fichero JAR, debo crear un **Runnable JAR file**, indicando el proyecto y su clase principal (clase con método Main). Posteriormente para ejecutar ese programa JAR arrancaré el terminal de Windows (cmd). Para ejecutarlo iré al directorio donde lo tengo almacenado y ejecutaré: // java -jar archivoJar.jar // (donde //archivoJar.jar// es mi archivo). También puedo ejecutarlo desde cualquier lugar, dando la ruta de mi fichero jar. * ** Fichero Jar Ejecutable con Interfaz gráfica **: Para guardar mi aplicación con interfaz de usuario en un JAR ejecutable, después de pulsar sobre exportar para crear un fichero JAR, debo indicarle que el tipo de JAR será **Runnable JAR file**. * **Fichero Jar con Clases (Librería de clases)**: Desde File -> Export -> **JAR File**. En este caso no queremos un fichero Jar ejecutable, sino un contenedor de clases. Indico todas las clases de cualquier proyecto que quiero que estén en el Jar, y lo creo. ===== Librería de clases ===== En Java el fichero estandar para empaquetar librerías de clases es el fichero //**Jar**//. Podemos crear nuestras propias clases con métodos para usarlas en otro programa, empaquetándolas en un fichero jar. **Todas las clases y los métodos definidos que guardaremos en una librería deben ser públicos (public)** {{:bloque3:exportjar.png?100 |}} Para guardar en un fichero JAR las clases que necesitamos usar en otros proyectos, debemos seleccionarlas para empaquetarlas. En Eclipse desde la pestaña //File//, seleccionaremos la opción //Export//. Una vez en esta nueva ventana abriremos la sección //Java//, y pulsarmos sobre //JAR File//. Después de pulsar sobre //JAR file//, se abrirá otra ventana en la que podemos seleccionar las clases que queremos guardar en nuestro JAR. Podemos seleccionar clases de distintos proyectos que queramos usar en otro. {{:bloque3:exportdialog.png?300 |}} {{ :bloque3:jardialog.png?300|}} ---- Finalmente seleccionaremos un destino para almacenar nuestro archivo JAR. Podemos usar una carpeta nueva (libs, por ejemplo) en el workspace para almacenarlos.   **Añadir librerias JAR a otros proyectos **: Para incluir ficheros JAR con clases y poderlas usar en otros proyectos debemos incluirlas en el PATH del proyecto: Pulsaremos con el botón derecho sobre el proyecto al que queremos añadir esta librería, en la parte del explorador de paquetes. Posteriormente iremos a la opción //Build Path// y en el menú desplegable seleccionaremos //Configure Build Path//. {{ :bloque3:buildpath.png?700 |}} En la nueva ventana que se nos despliega iremos a la pestaña //Libraries//, y pulsamos sobre //Add External Jars…// y seleccionaremos el fichero Jar que queremos usar en este proyecto. Ahora podemos usar las clases que tenemos en el paquete JAR. ---- (c) {{date> %Y}} Fernando Valdeón