Está en la página 1de 15

Creando archivos “*.

jar”  2008 

Crear el archivo “.jar” desde la consola de DOS 

PARTE I: Extendiendo los comandos de DOS 

Paso 1: Debemos extender los comandos del DOS a través de las variables de entorno, para 


ello ubicamos el jdk o jre en nuestra PC. 

Paso 2: Click derecho sobre Mi PC à propiedades, luego entramos en la pestaña de Opciones 


avanzadas y finalmente clickeamos el botón Variables de entorno.

Mamani Condori Edgar Miguel ‐ mamani.sistemas@hotmail.com  Página 1 


Creando archivos “*.jar”  2008 

Paso 3: Crearemos una variable de entorno para el usuario mamani llamado: JAVA_HOME y el 


valor para esta variable será:  “C:\Archivos de programa\Java\jdk1.6.0_03\bin;” y finalmente 
Aceptamos. 

Paso 4: Ahora modificamos la variable “PATH” agregando el siguiente valor: “%JAVA_HOME%” 


y terminamos aceptado las ventanas.

Mamani Condori Edgar Miguel ‐ mamani.sistemas@hotmail.com  Página 2 


Creando archivos “*.jar”  2008 

Paso 5: Para comprobar si ya hemos extendido los comandos de DOS introducimos el siguiente 
comando de java: “java –versión” en la ventana de DOS y nos debe mostrar el siguiente 
resultado:

Mamani Condori Edgar Miguel ‐ mamani.sistemas@hotmail.com  Página 3 


Creando archivos “*.jar”  2008 

PARTE II: Creando archivos *.jar 

Paso 1: Exploramos las opciones del comando  de jar. 

C:\Documents and Settings\mamani>jar 

Uso: jar {ctxui}[vfm0Me] [archivo‐jar] [archivo‐manifiesto] [punto‐entrada] [‐C dir] archivos... 

Opciones: 

‐c  crear archivo de almacenamiento. 

‐t  crear la tabla de contenido del archivo de almacenamiento. 

‐x  extraer el archivo mencionado (o todos) del archivo de almacenamiento. 

‐u  actualizar archivo de almacenamiento existente. 

‐v  generar salida detallada de los datos de salida estándar. 

‐f  especificar nombre del archivo de almacenamiento. 

‐m  incluir información de un archivo de manifiesto especificado. 

‐e  especificar punto de entrada de la aplicación para aplicación autónoma que se incluye 
dentro de un archivo jar ejecutable. 

‐0  sólo almacenar;  no utilizar compresión ZIP 

‐M  no crear un archivo de manifiesto para las entradas. 

‐i  generar información de índice para los archivos jar especificados. 

‐C  cambiar al directorio especificado e incluir el archivo siguiente. 

Si algún archivo coincide también con un directorio, ambos se procesarán. 

El nombre del archivo de manifiesto, el nombre del archivo de almacenamiento y el nombre 
del punto de entrada se especifican en el mismo orden que las marcas 'm', 'f' y 'e'. 

Paso 2: Crearemos una aplicación para arrastrar texto desde una JTextField hacia otra, aquí 


nuestra clase.

Mamani Condori Edgar Miguel ‐ mamani.sistemas@hotmail.com  Página 4 


Creando archivos “*.jar”  2008 

Nota: La clase completa se encuentra en el Apéndice A. 

Paso 3: Creamos una carpeta en la partición C llamado “Java in Action”, dentro de esta 
ubicamos el paquete que contiene a la clase anterior mostrada, como en la imagen siguiente.

Mamani Condori Edgar Miguel ‐ mamani.sistemas@hotmail.com  Página 5 


Creando archivos “*.jar”  2008 

Paso 4: Compilamos la clase contenida en el paquete de la siguiente manera: 

·  Abrimos la consola de DOS 
·  Para desplazarnos utilizanos “cd..” y “cd destino” 
·  Exploramos el directorio con “dir” 
·  Una vez dentro del paquete, compilamos la clase: “javac TextDrop.java”

Mamani Condori Edgar Miguel ‐ mamani.sistemas@hotmail.com  Página 6 


Creando archivos “*.jar”  2008 

Antes de compilar: 

Después de compilar:

Mamani Condori Edgar Miguel ‐ mamani.sistemas@hotmail.com  Página 7 


Creando archivos “*.jar”  2008 

Paso 5: Ahora crearemos el archivo jar llamado “Interpretado.jar” de la siguiente manera: 

·  Nos ubicamos desde la consola de DOS en “C:\Java in Action” 
·  Ejecutamos la siguiente sentencia: jar –cf Interpretado.jar com 

Antes de la ejecución de:  jar –cf Interpretado.jar com

Mamani Condori Edgar Miguel ‐ mamani.sistemas@hotmail.com  Página 8 


Creando archivos “*.jar”  2008 

Después de la ejecución: 

Ejecutamos el archivo “Interpretado.jar” haciendo doble click y nos mostrará lo siguiente: 

Desde aquí en adelante nos dedicaremos a solucionar dicho problema. 

Nota: Dentro del archivo “Interpretado.jar”  se encuentra lo siguiente: 

Y dentro de la carpeta “META‐INF” se encuentra el archivo “MANIFEST.MF” el cual contiene 


las siguientes líneas:

Mamani Condori Edgar Miguel ‐ mamani.sistemas@hotmail.com  Página 9 


Creando archivos “*.jar”  2008 

El aviso que nos ha mostrado la Máquina Virtual de Java es justamente porque falta una línea 
que indique la clase principal para ejecutarlo. 

Paso 6: Creando el archivo “temp.mf” para actualizar el archivo “MANIFEST.MF”. Notamos 


que no menciona la clase principal de la aplicación “Interpretado.jar”, entonces nuestro 
objetivo será agregar la siguiente línea: 

Mani‐class: com.swing.mamani.TextDrop 

Para ello creamos un archivo temporal llamado “temp.mf” el cual contendrá la línea faltante y 


lo guardamos en “C:\Java in Action”. 

Al final tenemos lo siguiente en el directorio “Java in Action”: 

Paso 7: Actualizando el archivo “MANIFEST.MF” con “temp.mf” de la siguiente manera: 

·  Nos ubicamos en la carpeta “Java in Action” desde la consola de DOS 


·  Ejecutamos la siguiente sentencia:  jar –uvmf temp.mf Interpretado.jar

Mamani Condori Edgar Miguel ‐ mamani.sistemas@hotmail.com  Página 10 


Creando archivos “*.jar”  2008 

Ahora el contenido del archivo “MANIFEST.MF” será:

Mamani Condori Edgar Miguel ‐ mamani.sistemas@hotmail.com  Página 11 


Creando archivos “*.jar”  2008 

Paso 8: Ejecutando el archivo Interpretado.jar, esto se puede hacer de dos formas: 


1.  Doble click sobre Interpretado.jar 
2.  Ejecutando la siguiente sentencia: java –jar Interpretado.jar

Mamani Condori Edgar Miguel ‐ mamani.sistemas@hotmail.com  Página 12 


Creando archivos “*.jar”  2008 

Apendice A 

// TextDrop.java 

package com.swing.mamani; 

import java.awt.*; 
import java.awt.event.*; 
import java.io.*; 
import javax.swing.*; 

public class TextDrop extends JFrame { 

private JTextField txtField1, txtField2; 

public TextDrop (String title) 

super (title); 
setDefaultCloseOperation (EXIT_ON_CLOSE); 
getContentPane ().setLayout (new GridLayout (3, 1)); 
JPanel pnl = new JPanel (); 
pnl.add (new JLabel ("Text field 1")); 
txtField1 = new JTextField ("Text1", 25); 
txtField1.setDragEnabled (true); 
pnl.add (txtField1); 
getContentPane ().add (pnl); 
pnl = new JPanel (); 
pnl.add (new JLabel ("Text field 2")); 
txtField2 = new JTextField ("Text2", 25); 
txtField2.setDragEnabled (true); 
pnl.add (txtField2); 
getContentPane ().add (pnl); 
pnl = new JPanel (); 
pnl.add (new JLabel ("Drop mode")); 
JComboBox cb = new JComboBox (new String [] { "USE_SELECTION","INSERT" 
}); 
cb.setSelectedIndex (0); 
ActionListener al; 
al = new ActionListener () 

public void actionPerformed (ActionEvent e){ 
JComboBox cb = (JComboBox) e.getSource (); 
int index = cb.getSelectedIndex (); 
if (index == 0) 

txtField1.setDropMode 
(DropMode.USE_SELECTION);

Mamani Condori Edgar Miguel ‐ mamani.sistemas@hotmail.com  Página 13 


Creando archivos “*.jar”  2008 

txtField2.setDropMode 
(DropMode.USE_SELECTION); 

else 

txtField1.setDropMode (DropMode.INSERT); 
txtField2.setDropMode (DropMode.INSERT); 


}; 

cb.addActionListener (al); 
pnl.add (cb); 
getContentPane ().add (pnl); 
pack (); 
setVisible (true); 
}//end TextDrop 

public static void main (String [] args){ 

Runnable r = new Runnable (){ 

public void run () 

new TextDrop ("Text Drop"); 

}; 
EventQueue.invokeLater (r); 
}//end main 
}

Mamani Condori Edgar Miguel ‐ mamani.sistemas@hotmail.com  Página 14 


Creando archivos “*.jar”  2008 

Apendice B 

Antes de arrastrar el texto seleccionamos: 

Después de arrastrar el texto:

Mamani Condori Edgar Miguel ‐ mamani.sistemas@hotmail.com  Página 15 

También podría gustarte