## Compilar y Ejecutar Programas Swing (JDK 1.1)

Aquí están los pasos para compilar y ejecutar nuestro primer programa Swing con el JDK 1.2 y JFC/Swing:

1. Descargar la última versión del JDK, si no lo has hecho ya.
2. Descargar la última versión del JFC 1.1.
3. Crear un programa que use componentes Swing.
4. Compilar el programa.
5. Ejecutar el programa.

#### Descargar la Última Versión del JDK 1.1

> Puedes descargar gratis la implementación de referencia del JDK 1.1 desde java.sun.com. Sólo tienes que ir a la página apropiada para tu plataforma -- Solaris o Win32.

#### Descargar la última versión de JFC/Swing

> Puedes desacargar la última versión del JFC 1.1 en la Home Page del JFC. Esta sección describe la versión Swing 1.1 del JFC 1.1.

#### Crear un Programa que use Componentes Swing

> Puedes usar un programa sencillo que nosotros proporcionamos, llamado SwingApplication. Por favor, descarga y guarda este fichero: SwingApplication.java. El nombre del fichero debe ser exactamente "SwingApplication.java" incluyendo las mayúsculas.

#### Compilar un Programa que use Componentes Swing

> El siguiente paso es compilar el programa. Aquí puedes ver una explicación general de cómo compilar una aplicación Swing con el JDK 1.1:
> 1. Anota dónde se encuentra tu copia del JFC 1.1 (Swing 1.1). El archivo de clases Swing swing.jar, está en el directorio superior de esta versión. Podrías querer crear una variable de entorno llamada SWING_HOME que contenga el path del directorio superior de la versión del JFC 1.1.

>    > Nota: No descomprimas el archivo swing.jar!

> 2. Anota dónde está instalada tu versión del JDK. Necesitas esto para poder encontrar las versiones apropiadas de las clases del JDK y el intérprete. Podrías querer crear una variable de entorno llamada JAVA_HOME que contenga el path del directorio superior de la versión del JDK.

>    Las clases del JDK están en el directorio lib del JDK, en un fichero llamado classes.zip. No descomprimas este fichero!. El intérprete Java está en el directorio bin del JDK.

> 3. Compila la aplicación especificando un classpath que incluya el fichero swing.jar, el fichero classes.zip, y el directorio que contenga las clases del programa (normalmente "."). Asegurate de que el fichero classes.zip y el compilador utilizado son exactamente de la misma versión del JDK!.

> El siguiente ejemplo muestra cómo compilar SwingApplication en un sistema UNIX. Asume que has configurado las variables de entorno JAVA_HOME y SWING_HOME.

> $JAVA_HOME/bin/javac -classpath .:$SWING_HOME/swing.jar: $JAVA_HOME/lib/classes.zip SwingApplication.java

> Si eliges no usar variables de entorno, podrías usar un comando como éste:

> javac -classpath .:/home/me/swing-1.1/swing.jar: /home/me/jdk1.1.7/lib/classes.zip SwingApplication.java

> Aquí puedes ver un ejemplo de compilación sobre Win32:

> %JAVA_HOME%\bin\javac -deprecation -classpath .;%SWING_HOME%\swing.jar;%JAVA_HOME%\lib\classes.zip SwingApplication.java

> Aquí puedes ver una alternativa que no usa variables de entorno:

> javac -deprecation -classpath .;C:\java\swing-1.1\swing.jar; C:\java\jdk1.1.7\lib\classes.zip SwingApplication.java

> > Nota: Si no puedes compilar SwingApplication.java, probablemente será debido a que no tienes los ficheros correctos en el classpath o a que estás usando una versión del JFC 1.1 que tiene un API Swing antiguo. Deberías poder ejecutar los programas de esta sección sin cambiarlos si te has actualizado a la versión más reciente del JFC 1.1.

> > Antes de la Beta 3 de Swing 1.1, el API Swing usaba nombres de paquetes diferentes. Aquí puedes ver cómo modificar SwingApplication.java para usar los antiguos nombres de paquetes:

> > //import javax.swing.*; //comment out this line import com.sun.java.swing.*; //uncomment this line

> > Puedes ver Nombres de Paquetes Swing para más información sobre los distintos nombres de paquetes.

#### Ejecutar el Programa

> Una vez que el programa se ha compilado satisfactoriamente, podemos ejecutarlo.

> Asegurate de que el classpath del intérprete no sólo incluye lo que necesites para compilar el fichero, sino que también debe incluir el fichero para el Aspecto y Comportamiento que use el programa. El Aspecto y Comportamiento Java, que es el valor por defecto, está en el fichero swing.jar. El Aspecto y Comportamiento Windows está en windows.jar, y el Aspecto y Comportamiento CDE/Motif está en motif.jar. No estás limitado a estas opciones de Aspecto-y-Comportamiento; puedes usar cualquier otro Aspecto y Comportamiento diseñado para usarse con el API de Swing 1.1.

> Esta aplicación usa el Aspecto y Comportamiento Java, por eso sólo necesitamos swing.jar en el path de clases. Así, el comando para ejecutarlo sería similar al comando para compilarlo. Sólo hay que sustituir java por javac, y eliminar el sufijo .java. Por ejemplo, en UNIX:

> java -classpath .:/home/me/swing-1.1/swing.jar: /home/me/jdk1.1.7/lib/classes.zip SwingApplication

> Aquí hay un ejemplo de ejecución de una aplicación que usa el Aspecto y Comportamiento Windows:

> %JAVA_HOME%\bin\java -classpath .;%SWING_HOME%\swing.jar; %JAVA_HOME%\lib\classes.zip;%SWING_HOME%\windows.jar SomeClass

> Mientras estás desarrollando tu aplicación puedes simplificar el path de clases usando swingall.jar, que incluye todas las clases de la versión JFC 1.1. Por eso en lugar de poner swing.jar y windows.jar en tu path de clases, por ejemplo, puedes poner sólo swingall.jar.

> > Importante: Evita usar swingall.jar en tu aplicación final, contiene información usada por desarrolladores, así cómo los paquetes de Aspecto y Comportamiento que usa una aplicación típica. Puedes disminuir el tamaño usando sólo el fichero swing.jar además de los arhivos de Aspecto y Comportamiento que necesites.

Ozito