lunes, 23 de septiembre de 2013

Las variables PATH y CLASSPATH - II

Si no se desea tener que ejecutar este fichero cada vez que se abre una consola de MS-DOS es necesario indicar estos cambios de forma "permanente". La forma de hacerlo difiere entre Windows 95/98 y Windows NT. En Windows 95/98 es necesario modificar el fichero Autoexec.bat situado en C:\. añadiendo las líneas antes mencionadas. Una vez rearrancado el ordenador estarán presentes en cualquier consola de MS-DOS que se cree. La modificación al fichero Autoexec.bat en Windows 95/98 será la siguiente:

set JAVAPATH=C:\jdkl.1.7
set PATH=.;%JAVAPATH%\bin;%PATH%
set CLASSPATH=

donde en la tercera línea debe incluir la ruta de los ficheros donde están las clases de Java. En el caso de utilizar Windows NT se añadirá la variable PATH en el cuadro de diálogo que se abre con Start -> Settings -> Control Panel -> System -> Environment -> User Variables for NombreUsuario.
También es posible utilizar la opción -classpath en el momento de llamar al compilador javac.exe o al intérprete java.exe. En este caso los ficheros *.jar deben ponerse con el nombre completo en el CLASSPATH: no basta poner el PATH o directorio en el que se encuentra. Por ejemplo, si se desea compilar y ejecutar el fichero ContieneMain.java. y éste necesitara la librería de clases G:\MyProject\OtherClasses.jar. además de las incluidas en el CLASSPATH. la forma de compilar y ejecutar sería:

javac -classpath .\;G:\MyProject\OtherClasses.jar ContieneMain.java
java -classpath .\;G:\MyProject\OtherClasses.jar ContieneMain


Se aconseja consultar la ayuda correspondiente a la versión que se esté utilizando, debido a que existen pequeñas variaciones entre las distintas versiones del JDK. 
Cuando 1111 fichero filename.java se compila y en ese directorio existe ya un fichero filename.class, se comparan las fechas de los dos ficheros. Si el fichero filename.java es más antiguo que el fileitcmie.class 110 se produce 1111 nuevo fichero fileiiaine.class. Esto sólo es válido para ficheros *.class que se corresponden con una clase public.

No hay comentarios:

Publicar un comentario