3. 1. ARCHIVO DISTRIBUIBLE .JAR:
¿Qué son los
ficheros JAR?
Una aplicación en Java está compuesta
por varios ficheros .java. Al compilarlos
obtenemos varios ficheros .class (uno por
fichero .java), y no un único fichero
ejecutable como ocurre en otros
lenguajes. A menudo la aplicación está
formada no sólo por los ficheros .class
sino que usa ficheros de sonido
(usualmente .au en Java), iconos, etc., lo
que multiplica la cantidad de ficheros que
forman la aplicación compilada.
Los ficheros Jar (Java ARchives) permiten
recopilar en un sólo fichero varios ficheros
diferentes, almacenándolos en un formato
comprimido para que ocupen menos espacio. La
particularidad de los ficheros .jar es que no
necesitan ser descomprimidos para ser usados,
es decir que el intérprete de Java es capaz de
ejecutar los archivos comprimidos en un archivo
jar directamente. Por ejemplo, si hemos
recopilado todos los ficheros necesarios para
ejecutar una aplicación en un fichero "aplic.jar",
podemos lanzar la aplicación desde una terminal
de texto mediante: java -jar aplic.jar
4. Crear un archivo distribuible jar para poder usar las aplicaciones que haces en java no tiene mucha ciencia y si no
quieres meterle nada especial y simplemente quieres que se ejecute el programita en cuestión con netbeans tienes
que hacer lo siguiente:
Establecer el proyecto del que quieres obtener el jar como proyecto principal
Ir al menú Run y elegir Clean and Build Main Proyect o pulsar Mayúsculas+F11
Otra opción es haciendo click derecho en el proyecto elegido elegir Clean and Build y se obtiene lo mismo. Lo hagas
de la forma que lo hagas la primera vez hay que elegir Clean and Build y luego si quieres puedes usar Build o Build
Main Proyect (ó F11).
El .jar resultante está en la carpeta dist dentro del proyecto de netbeans.
Pero si has usado alguna librería externa netbeans no te la incluye en el jar sino que la deja mete en la carpeta lib
(que también está dentro de la carpeta dist).
5. Para incluir la librería externa
en el JAR tienes que hacer lo
siguiente:
Descomprime el jar (Si
usas winrar elige extraer
aquí) y tendrás la carpeta
lib y las dos que había
dentro del jar META-INF y
otra que tendrá el nombre
de tu aplicación.
Abre el archivo
MANIFEST.MF que está en
la carpeta META-INF y
modifica la ruta en la que
buscará las librerías. Por
ejemplo, si tenemos Class-
Path: lib/log4j-1.2.16.jar
para que funcione al incluir
la carpeta lib dentro del .jar
la ruta deberá de ser Class-
Path: ./lib/log4j-1.2.16.jar.
Selecciona las 3 carpetas, botón
derecho Añadir al archivo… le
pones el nombre de tu aplicación
(si quieres) eliges ZIP como
formato del archivo y le das a
aceptar (Si no usas winrar
comprímelo en un ZIP como se
haga teniendo en cuenta que lo
que necesitas es comprimir las 3
carpetas sin que estén dentro de
otra porque de lo contrario no
funcionará el jar).
Ahora solo queda
cambiar la extensión del
archivo resultante de .zip
a .jar y ya tienes tu jar
listo y con tus librerías
externas incluidas.
6. Así de rápido y sencillo es incluir librerías (imágenes, los .java o lo que quieras) en el jar del
proyecto usando NetBeans.
2. PROCESO PARA GENERAR EJECUTABLE:
Un archivo EXE, o un archivo con la extensión “.exe”, es un tipo de archivo ejecutable que se usa
comúnmente con los sistemas operativos de Windows. El archivo EXE es uno de los archivos más
útiles de Windows, ya que se usa comúnmente para instalar o ejecutar programas. Casi todos los
instaladores serán paquetes ejecutables, y muchos programas pequeños se ejecutan solamente con
archivos Exe. Si necesitas crear un programa o un script para distribución o instalación, necesitarás
aprender a hacer un archivo EXE tú mismo. Afortunadamente, Windows viene con una utilidad para
crear ejecutables, y usarla es muy fácil.
7. PASOS:
a) Ejecuta la aplicación IExpress en Windows. La
aplicación IExpress es una utilidad que viene
incluida en Windows, y provee una forma sencilla
de convertir tu programa en ejecutable. Para
ejecutar el programa, presiona el botón de Inicio y
haz clic en “Ejecutar”. En el cuadro de diálogo que
aparezca, teclea “iexpress.exe” y presiona “Enter”.
Si usas Windows Vista, puedes presionar el botón
de “Inicio” y empezar a teclear “iexpress” y
aparecerá el archivo en los resultados de
búsqueda.
8. b) Especifica que quieres crear un nuevo
ejecutable. Cuando IExpress se abra, te
preguntará si quieres abrir un archivo
ejecutable existente o si quieres crear
uno. Escoge crear uno nuevo
seleccionando la opción que dice “Create
new Self Extraction Directive file”.
9. c) Especifica el tipo de paquete ejecutable que
quieras crear. En la nueva pantalla te pedirá
escoger entre 3 opciones para la acción que
debe tomarse cuando el usuario abra el archivo
EXE. La primera es extraer el archivo y luego
ejecutar un comando adicional. El segundo es
extraer los archivos solamente (lo que se
recomienda). La tercera opción sólo aplica para
distribuir controles Active X.
10. d) Ponle un nombre a tu paquete. La
siguiente pantalla de pedirá un nombre
para el paquete. Este no es el nombre de
archivo para tu archivo EXE; este es el
título que aparecerá en la ventana del
instalador.
11. e) Escoge una ventana de confirmación para tu
archivo EXE si lo deseas. La siguiente
pantalla en IExpress te permitirá especificar
un texto de confirmación para darle al
usuario al abrir el archivo ejecutable. Si no
deseas que aparezca ese texto, marca la
opción que dice “No Prompt”.
12. f) Especifica los acuerdos de licencia que rigen
el uso de tu ejecutable. La siguiente pantalla
te permitirá elegir unos acuerdos de licencia
para tu software. El instalador le informará al
usuario que tipo de acuerdo rige el uso del
software. Para mostrar un acuerdo de
licencia, teclea el acuerdo que rija el uso del
software en un archivo de texto y únelo
después de seleccionar el botón que dice
“Display a license”.
13. g) Selecciona los archivos que tu archivo EXE
instalará en la computadora del usuario. La
siguiente pantalla te permitirá escoger los
archivos que el ejecutable deba instalar;
puedes seleccionar tantos como quieras.
Agrega un archivo haciendo clic en el botón
que dice “Add” y luego navega a la ubicación
del archivo en tu disco duro. Podrás ver los
archivos que agregaste a la ventana de
iExpress.
14. h) Especifica el nombre del archivo
ejecutable. La siguiente pantalla te
pedirá especificar el nombre de archivo
para tu archivo EXE; recuerda que debe
terminar con la extensión “.exe”. Esta
pantalla también incluye una opción para
mostrar u ocultar el proceso completo de
extracción al usuario.
15. i) Crea el archivo ejecutable.
Haz clic en Next para crear el paquete.
Haz clic en el botón Finish en la última pantalla
de iExpress para compilar el archivo EXE y
guardarlo en la ubicación que especificaste.
Puedes probar el archivo ejecutable haciendo
doble clic en él extraerá los archivos.
16. 3. EJEMPLOS:
Se desea obtener n
cantidad de números
primos, el usuario debe
de introducir el número
final para obtener los
números primos.
Por ejemplo: Deseo
saber cuáles son los
números primos que
hay hasta el número 50.
Primero creamos una
Librería Java a la cual
hemos puesto el
nombre de aritmética,
luego, crearemos un
paquete que le pondré
el nombre de métodos
en este paquete creare
una clase llamada
primos.java.
La clase primos.java se
encargará de calcular
los números primos y
devolver el resultado
impreso en la pantalla
del usuario.
17. }
}
if (primo) {
//El 4 no es primo xD.
if (i == 4) {
} else {
System.out.print(i + " - ");
}
}
}
}
}
package metodos;
public class primos {
int j, i, dv, sum;
boolean primo;
public void primos(int valores) {
for ( i = 2; i < valores; i += 1) {
primo = true;
for ( j = 2; j < i / 2; j += 1) {
if (i % j == 0) {
primo = false;
break;
18. Ya que tenemos nuestra libreria aritmetica.jar con
su respectivo paquete llamado métodos y nuestro
método para calcular los números primos llamada
clase primo.java, pasamos a crear nuestra
aplicación.
Para ello pedí un nuevo proyecto “Java Aplication”
al cual llame cprimos, yo trabajare en modo
consola por razones de tiempo.
Nos vamos al proyecto, seleccionamos la carpeta
Libraries, damos clic con el botón derecho Agregar
JAR/Folder y buscamos el archivo jar que hayamos
generado del proyecto anterior (o sea de la librería
o clase como quieran llamarle que está más
arriba).
package cprimos;
import metodos.*;
import java.io.*;
public class Main {
/**
* @param args the command line arguments
*/
public static void main(String[> args) throws IOException {
//variables
int total;
//Creamos una instanacia de primos
primos pm = new primos();
BufferedReader bf = new BufferedReader(new
InputStreamReader(System.in));
System.out.println("+++ Calculadora de Números Primos
+++");
System.out.println("Hasta donde deseas calcular: ");
total = Integer.parseInt(bf.readLine());
//Hacemos el paso de parámetros al método primos de
la clase métodos
pm.primos(total);
}
}
19.
20. RESUMEN:
NetBeans es un entorno de desarrollo
muy completo y profesional. Contiene
muchas funcionalidades, para distintos
tipos de aplicaciones y para facilitar al
máximo la programación, la prueba y la
depuración de las aplicaciones que se
desarrollan. También incorpora un editor
propio.
Los ficheros Jar (Java ARchives) permiten
recopilar en un sólo fichero varios ficheros
diferentes, almacenándolos en un formato
comprimido para que ocupen menos espacio.
Esta particularidad de los ficheros .JAR es
que no necesitan ser descomprimidos para
ser usados, es decir que el intérprete de Java
es capaz de ejecutar los archivos
comprimidos en un archivo JAR directamente.
21. • Los archivos Ejecutables (EXE) pueden contener
virus y demás códigos maliciosos, por ello, es
recomendable escanearlos bien con el antivirus de
tu portátil antes de abrirlos.
• Para manejar un archivo ejecutable es
recomendable aprender el código binario para
ahorrar tiempo.
RECOMENDACIONES:
22. CONCLUSIONES:
• Una aplicación en Java está compuesta por varios ficheros .java. Al compilarlos obtenemos
varios ficheros .class (uno por fichero .java), y no un único fichero ejecutable como ocurre
en otros lenguajes. A menudo la aplicación está formada no sólo por los ficheros .class sino
que usa ficheros de sonido (usualmente .au en Java), iconos, etc., lo que multiplica la
cantidad de ficheros que forman la aplicación compilada.
• Se puede lanzar una aplicación llamando al intérprete de java (comando java) seguido de
.JAR y del nombre del fichero .JAR correspondiente. Sin embargo, hay algo en todo esto que
no "encaja": Si el fichero .JAR contiene muchos ficheros .class, ¿cuál de todos se ejecuta?
Sabemos que debe ejecutarse el que contiene el método main pero, ¿cómo sabe el
intérprete de Java que clase de todas las del fichero contiene este método? La respuesta es
que lo sabe porque se lo tenemos que decir durante la creación del fichero jar. Y la forma de
hacerlo es un poco liosa. Vamos a verlo paso a paso. Para simplificar suponemos que
estamos en un terminal de texto (consola Linux o símbolo del sistema en Windows), que el
comando JAR es accesible (es decir, la carpeta que contiene jar.exe) y que nos encontramos
en el directorio donde se encuentran los ficheros .class que deseamos "empaquetar".
23. Crear un directorio META-INF (¡las mayúsculas son importantes!) y dentro un fichero
MANIFEST.MF. Este fichero indica, entre otras cosas, cuál será la clase principal. A menudo el
fichero MANIFEST.MF contiene una única línea: Main-Class: Principal
Indicando que Principal.class es la clase que contiene el método main.
Crear el fichero .jar mediante el comando
jar cfm fich.jar META-INF/MANIFEST.MF *.class
El nombre fich.jar es el que nosotros queramos y corresponde al fichero .jar que se creará
conteniendo todos los ficheros indicados (en este caso todos los ficheros .class).
Se puede comprobar que el contenido del fichero es el adecuado escribiendo: jar tf fich.jar
Que mostrará la lista de clases contenidas en el fichero. Este comando también puede ser útil
para examinar el contenido de las librerías del sistema.
Para lanzar el archivo basta con teclear ahora: java -jar fich.jar
24. Si alguna vez se quiere "desempaquetar" el contenido de un archivo jar se pueden usar las opciones
"xf": jar fich.jar
Esto puede resultar particularmente útil si queremos echar un vistazo a algunos paquetes del sistema
que vienen de esta forma.
APRECIACIÓN DEL EQUIPO:
• Los ficheros JAR son de gran ayuda, ya que permiten recopilar en un sólo fichero varios
ficheros diferentes, almacenándolos en un formato comprimido para que ocupen menos
espacio. Los ficheros .JAR no necesitan ser descomprimidos para ser usados, puesto que el
intérprete de Java es capaz de ejecutar los archivos comprimidos en un archivo JAR
directamente.