Establecer classpath en Java
- ¿Cómo configurar Classpath en Java?
- Configuración de Classpath en Java
- Configuración de Classpath mediante variables de entorno
-
Configuración de
classpath
desde la línea de comandos -
Configuración de Classpath usando la opción
-classpath
- Ver la ruta de clases
- Resumen
Este tutorial presenta el procedimiento para establecer classpath en Java y enumera algunos códigos de ejemplo para comprender el tema.
¿Cómo configurar Classpath en Java?
A menudo importaremos clases externas o definidas por el usuario para que estén disponibles para su uso en nuestra clase actual. La declaración de importación se utiliza para hacer esto en Java.
import org.projects.DemoClass;
DemoClass dc = new DemoClass();
Sería imposible para la JVM revisar todos los directorios de nuestro sistema y encontrar la clase adecuada. JVM usa la ruta de clases para ubicar las clases y los archivos jar requeridos. En este tutorial, aprenderemos cómo configurar la ruta de clases en Java.
Configuración de Classpath en Java
- Podemos establecer el classpath como una variable de entorno. O podemos usar la línea de comandos para hacer esto.
- Antes de comenzar, debemos saber que el valor predeterminado de la ruta de clases es el directorio actual. Se establece mediante un punto (
.
). Cambiar la ruta de clases alterará este valor predeterminado. Si tiene clases o jar presentes en el directorio actual, incluya el directorio actual en la ruta de clases. - Podemos especificar varias rutas de clases mediante el uso de separadores. Si utiliza el sistema operativo Windows, el separador es un punto y coma (
;
). Si está en sistemas basados en Linux / Unix, los dos puntos (:
) se utilizan como separador.
El siguiente código demuestra esto. Estamos tratando de incluir todas las clases del directorio actual (usando dot) y dos archivos JAR.
.;C:\javaProjects\someJAR.jar;C:\javaOldProjects\someOldJAR.jar //For Windows
.:/javaProjects/someJAR.jar:/javaOldProjects/someOldJAR.jar //For Linux/Unix
- Las rutas de clase pueden contener la ruta a los archivos jar y la ruta al paquete superior de nuestras clases. Por ejemplo, si la ruta del archivo DemoClass.class es
C:\javaProjects\org\projects\DemoClass.class
, entonces podemos establecer la ruta de clase enC:\javaProjects
y usar la siguiente instrucción de importación.
import org.projects.DemoClass;
Configuración de Classpath mediante variables de entorno
Es una buena idea agregar una ruta de clases a la variable de entorno si tenemos una ubicación fija que siempre contendrá los archivos jar y los archivos de clases requeridos. Necesitamos encontrar las variables de entorno del sistema y agregar la variable CLASSPATH si está ausente. A continuación, agregaremos todas las rutas de los frascos y las clases.
En un sistema Windows,
- Haga clic en el icono de Computadora y abra las propiedades desde la esquina superior izquierda.
- Haga clic en Propiedades avanzadas del sistema > Avanzado> Variables de entorno.
- Busque la variable
CLASSPATH
y agréguele las rutas. Si la variableCLASSPATH
está ausente, primero debemos agregar la variable.
Configuración de classpath
desde la línea de comandos
Podemos usar el comando set CLASSPATH
en Windows para configurar la ruta de clases. Necesitamos separar diferentes rutas usando el punto y coma en Windows. En el siguiente ejemplo, estamos agregando el directorio actual y un archivo JAR a la ruta de clases.
$ set CLASSPATH=.;C:\javaProjects\someJAR.jar
En Linux / Unix, podemos usar el comando export CLASSPATH
para establecer la ruta de clases. Utilice los dos puntos como separador para varias rutas.
$ export CLASSPATH=.:/javaProjects/someJAR.jar
Configuración de Classpath usando la opción -classpath
Podemos usar la opción -classpath
o -cp
para establecer la ruta de clase al compilar y ejecutar los archivos de clase. El siguiente código demuestra esto.
$ javac -classpath .;C:\javaProjects\someJAR.jar SomeClass.java
$ java -classpath .;C:\javaProjects\someJAR.jar SomeClass
Ver la ruta de clases
Podemos verificar si nuestra ruta de clases se configuró con éxito o no utilizando los siguientes comandos.
Para ventanas:
echo %CLASSPATH%
Para sistemas basados en Linux / Unix:
echo $CLASSPATH
Resumen
La ruta de clases es la ubicación donde la JVM buscará clases, archivos JAR y otros recursos. Establecer la ruta de clase correcta asegura que nuestra aplicación Java se ejecute sin problemas. Si la ruta de clase no está configurada correctamente, entonces podemos obtener ClassNotFoundException
o NoClassDefFoundError. Podemos configurar las variables de entorno o usar la línea de comando para configurar la ruta de clases. No se recomienda establecer variables de entorno globales para classpath. Se recomienda utilizar la opción -cp
o -classpath
desde la línea de comando para especificar la ruta de clase. Se asegurará de que no se modifiquen las configuraciones globales.