En el instante en que estoy escribiendo esto, Java todavía no es un producto comercial. No todas las máquinas disponen de la versión del Java Development Kit para ejecutarse en ellas. Por ello, solamente comentaré la instalación de JDK en Solaris, Windows 95 y Linux.
Actualmente ya hay entornos de desarrollo integrados completos para Java, diferentes del JDK de Sun. Symantec dispone de un compilador de Java para Windows 95 y Windows NT, con las ventajas del aumento de velocidad de proceso y capacidades multimedia que esto proporciona, Symantec Café. Borland también está trabajando en ello y la nueva versión de su entorno de desarrollo soporta Java. Sun ha lanzado la versión comercial de su propio entorno de desarrollo para Java, el Java Workshop, enteramente escrito en Java. Y Microsoft ha puesto en el mercado Visual J++, que sigue el estilo de todas sus herramientas de desarrollo.
No obstante, trataremos solamente el JDK, que hasta el momento es lo más conocido. El entorno básico del JDK de Java que proporciona Sun está formado por herramientas en modo texto, que son: java, intérprete que ejecuta programas en byte-code. javac, compilador de Java que convierte el código fuente en byte-code. javah, crea ficheros de cabecera para implementar métodos para cualquier clase. javap, es un descompilador de byte-code a código fuente Java. javadoc, es un generador automático de documentos HTML a partir del código fuente Java. javaprof, es un profiler para aplicaciones de un solo thread. HotJava, es un navegador Web escrito completamente en Java.
El entorno habitual pues, consiste en un navegador que pueda ejecutar
applets, un compilador que convierta el código fuente Java
a byte-code y el intérprete Java para ejecutar los programas.
Estos son los componenetes básicos para desarrollar algo
en Java. No obstante se necesita un editor para escribir el código
fuente, y no son estrictamente necesarias otras herramientas como
el debugger, un entorno visual, la documentación o un visualizador
de jerarquía de clases. Tan es así, que disponiendo
del navegador Netscape 2.0 no se necesita ni tan siquiera el JDK
(a petición de varios amigos que disfrutan del uso de Linux
pero no disponen de soporte ELF para poder utilizar el JDK portado
por Randy Chapman, les indicaré como conseguir utilizar
el compilador embebido en Netscape).
La versión del JDK para Windows es un archivo autoextraible.
Se necesitan alrededor de 6 Mb de espacio libre en disco. Ejecutar
el fichero, que desempaquetará el contenido del archivo.
El directorio donde se instale no es importante, pero supondremos
que se instala en el raiz del disco C:
, en cuyo caso los archivos
colgarán de c:\java
. Es necesario añadir c:\java\bin
a la variable de entorno PATH.
Además de los ficheros java, el JDK incluye dos librerías
dinámicas, MSVCRT20.DLL y MFC30.DLL, que se instalarán
en el directorio de Java. Si tienes ninguna copia de estos ficheros
en tu ordenador (probablemente en el directorio system
de Windows)
copia estos ficheros en el directorio c:\java\bin
. Si estos ficheros
ya están en tu ordenador, elimina las copias extra que
instala el JDK.
La versión del JDK para Solaris es un fichero tar comprimido. Se necesitan alrededor de 9 Mb de disco para descomprimir el JDK, aunque el doble de espacio sería una cifra más cómoda. Ejecutar los siguientes comandos:
% uncompress JDK-beta-solaris2-sparc.tar.Z % tar xvf JDK-beta-solaris2-sparc-tar
Puedes descomprimir el archivo en tu directorio home
, o, si tienes
privilegios de supervisor, en algún sitio más conveniente
de /usr/local
para que todos los usuarios tengan acceso a los
ficheros. Sin embargo, los privilegios del supervisor no son necesarios
para instalar y ejecutar Java. Por simplicidad, supondré
que has descomprimido el JDK en /usr/local
, aunque el path completo
donde se haga no tiene relevancia (también es posible colocarlo
en /opt
que es donde residen todas las aplicaciones de Solaris).
Si lo has colocado en un sitio diferente, simplemente sustituye
/usr/local
por ese directorio (si lo has descomprimido en tu home,
puedes utilizar ~/java
y ~/hotjava
, en vez del path completo).
Es necesario añadir /usr/local/java/bin
a la variable de
entorno PATH. Utiliza el siguiente comando (suponiendo que tengas
el shell csh o tcsh):
set path=($PATH /usr/local/java/bin)
También puedes añadir esta línea al final
del fichero .profile y .cshrc, y ya tienes el sistema listo para
ejecutar applets. Si quieres desembarazarte de la ventana que
aparece cada vez que lances el appletviewer con la licencia de
Sun, crea un directorio que se llame .hotjava en el directorio
java/bin y ya no volverás a verla.
Necesitas un kernel que soporte binarios ELF, por lo tanto tu Linux debe ser la versión 1.2.13 o superior, las anteriores tienen un bug que hacen que javac no funcione. Necesitas también Netscape, versión 2.0b4 o posterior. Sobre la versión 1.2.13 del kernel de Linux, hay que seguir los pasos que indico para conseguir que JDK funcione:
J_HOME=/usr/local/java PRG=/usr/local/java/bin
/lib/libc.so.5
es un link simbólico a este nuevo fichero. Si no lo es,
hacer el /lib 'ln -s libc.so.5.2.18 libc.so.5'
Esto debería ser suficiente para compilar cualquier cosa en Java/Linux. En caso de tener problemas, es el momento de recurrir a las FAQ.
Siguiendo los pasos indicados ya se puede ejecutar el ejemplo del Tic-Tac-Toe que propone la hoja de instalación que Sun ha incluido en todas sus versiones y que en Linux consistiría en cambiarse al directorio de la demo:
% cd /usr/local/java/demo/TicTacToe
ejecutar el visualizador de applets sobre la página html:
% appletviewer example1.html
y a jugar a las tres en raya. Por cierto, que el algoritmo que
usa el ordenador está falseado por lo que es posible ganarle.
Parece raro, pero se puede conseguir. Lo único necesario es el navegador Netscape 2.0. Este navegador, junto con la máquina virtual Java (JVM) y el sistema run-time, tiene un compilador Java. Si no se dispone del Java Development Kit (JDK), que no está disponible para todas las plataformas, pero sí de la versión de Netscape para nuestra plataforma, aquí van los pasos a seguir para utilizar el compilador de Java embebido en Netscape.
Como necesito partir de algún punto para tomarlo como referencia, voy a suponer que estamos sobre Linux y que vamos a prescindir del JDK de Randy Chapman. Lo que habría que hacer sería lo siguiente.
Primero. Instalar Netscape en el ordenador. Asegurarse de entender perfectamente y leerse hasta el final el fichero README, para seguir las instrucciones específicas de la instalación de Netscape en la plataforma y que Netscape funcione perfectamente. En nuestro caso, en que vamos a intentar compilar código Java con Netscape sobre Linux, la pieza clave es la situación del fichero moz2_0.zip, que en mi máquina está en /usr/local/netscape/java/classes.
Segundo. Extraer de una copia cualquiera del JDK (aunque sea de otra plataforma), el fichero java/lib/classes.zip y guardarlo en el mismo sitio que el fichero moz2_0.zip; esta localización no es necesaria, pero simplifica la estructura.
Tercero. Fijar la variable de entorno CLASSPATH para que Netscape pueda encontrar sus propias clases además de las clases del Java de Sun. Asegurarse de incluir el "directorio actual", para poder compilar a la vez que se usan los ficheros .zip de Netscape y Sun. Por ejemplo:
setenv CLASSPATH .:/usr/local/netscape/java/classes/moz2_0.zip : /usr/local/netscape/java/classes/classes.zip
Cuarto. Compilar el código Java (applet o aplicación) con el comando:
netscape -java sun.tools.javac.Main [fichero].java
(sustituir el nombre del fichero con el código Java en vez de [fichero]). Esto convertirá el código fuente Java en byte-code, generándose el archivo [fichero].class.
Quinto. Comprobar si se puede ejecutar la aplicación con el comando:
netscape -java [clase]
(sustituir el nombre de la clase de la aplicación -la que contiene la rutina main- en vez de [clase]).
Sexto. Si se ha compilado un applet Java, construir una página html que lo utilice para visualizarlo con el navegador en su forma normal. O también se puede visualizar utilizando el appletviewer, ejecutando:
netscape -java sun.applet.AppletViewer [clase]
Desgraciadamente, la sentencia anterior no parece funcionar en todos los sistemas. Hay amigos míos que no han sido capaces de visualizar applets con este método.
Para aprovechar el tiempo, se puede crear un script que recoja los pasos 3, 4 y 6. Si estamos utilizando el csh, el contenido del script sería:
#/bin/csh -f setenv CLASSPATH .:/usr/local/netscape/java/classes/moz2_0.zip: /usr/local/netscape/java/classes/classes.zip netscape -java sun.tools.javac.Main $1
y lo almacenaríamos como javac. Se ha de hacer el
script ejecutable y cambiar /bin/csh por el path completo donde
esté situado el csh. De forma semejante podemos
definir el intérprete java y el appletviewer,
sustituyendo la línea adecuada de llamada a Netscape.
|
[Anterior] [Indice] [Siguiente] |