Un archivo .jar es una compilación de clases de java dispuestas a ejecutarse como apliación en cualquier sistema operativo, digamos, los exes de java.
Para crearlos existen varios mitos através de la red, pero ahora, les presento el más efectivo, o al menos el que me funcionó a mí:
Necesitarás un archivo de manifiesto y correr este comando en la carpeta donde tengas todos los .class del proyecto ya sea navegando desde el cmd con "cd ruta_del_proyecto" o creando un .cmd con el comando y ejecutándolo en la carpeta del proyecto.
El manifiesto es un txt que solo tiene: "Main-Class: Login" y necesitará estar local a los .class, en este caso usé "Login" como clase principal (la que tiene el main)
El comando para crearlo es: $ jar cmf manifest.txt iClock.jar *.class
Lo cual equivale a "jar cmd archivodemanifesto.txt nombredeljar.jar clasesDelProyecto.class"
Si usas paquetes, necesitarás especificar en "clasesDelProyecto":
nombredelpaquete.nombredelaclase.class
Además necesitarás tener los archivos locales a los .class:
jar.exe y jli.dll
Estos vienen en la instalación del JDK.
Cuando se haya creado el archivo .jar después de haber ejecutado el comando en la carpeta con los .class y el manifest.txt, ábrelo con winRar y busca el archivo MANIFEST.MF
en la carpeta META-INF, lo abres y le añades la línea:
Main-Class: Login
Que es lo mismo que tenias en el manifest.txt, dejas un renglón vacío abajo de esta línea y guardas el archivo y listo.
Podrás dar doble click para abrir tu aplicación si se trata de una aplicación gráfica, pero si es en línea de comandos, necesitarás ejecutarla en el cmd.
Edito: Ejemplo -->
- Supongamos, tenemos un programita que jala con 5 clases. Compilamos dichas clases generando los archivos .class.
- Copiamos y pegamos estos archivos a una carpeta llamada proyecto.
- Buscamos los archivos jar.exe y jli.dll en nuestra máquina para copiar y pegar dichos archivos en la carpeta proyecto.
- Creamos un .txt que se llame manifest.txt y lo guardamos en la carpeta proyecto, en él sólo escribimos: Main-Class: Login pues en la clase Login es donde tengo el método main que hace correr todo el programa.
- Creamos un .cmd que se llame creaJar.cmd y lo guardamos en la carpeta proyecto, en él escribimos: jar cmf manifest.txt iClock.jar *.class donde iClock.jar será el nombre de nuestro jar
- Ya con todos estos archivos en la carpeta proyecto, ejecutamos el creaJar.cmd
- Si hicieron todo bien hasta aquí, se creará un archivo llamado iClock.jar en la misma carpeta proyeto.
- Abran este archivo con winRar y en él vendrán los archivos .class y una carpeta llamada META-INF en ella vendrá un archivo llamado MANIFEST.MF lo abren con block de notas y en él escriben lo que tenían en el manifest.txt: Main-Class: Login hasta abajo dejando un renglón en blanco por debajo de esta última línea.
- Guardan actualizando el MANIFEST.MF en el jar y listo.
- Como lo dije anteriormente, si es una aplicación gráfica, se desplegarán las ventanas, pero si es una aplicación en línea de comandos necesitarán correr esta aplicación desde el cmd.
Este tuto es para hacerse desde WinBugs, pero para linux es básicamente lo mismo, es decir, también necesitarán el comando Jar que viene con el JDK, salvo que el proceso se hace en la terminal.
Bueno dudas o comentarios, háganmelos saber por este medio, jeje, pues que la fuerza los acompañe y el resto... lo dejo a su criterio
está algo confuso, no crees que seria mejor poner un ejemplo o algo asi:s. buen post ;) bueno los 2 de java.
ResponderEliminarServido jovenaso...
ResponderEliminargrax y soy nena:)
ResponderEliminarDisculpe, servida señorita...jeje
ResponderEliminar