Error de JAVA: Clase principal no encontrada o no se puede cargar

¿Cómo solucionarlo? La solución es la siguiente:

1. Dado que el problema ocurre durante la fase de ejecución, puede deberse a una configuración incorrecta de las variables de entorno, es decir, el classpath puede estar configurado incorrectamente, causando el archivo .class. para no cargar. Luego, en este momento puede verificar si la ruta de clase está configurada. En términos generales, la configuración de la ruta de clase es la siguiente:

.;%java_home%\lib;%java_home%\lib\tools.jar; (Preste atención al . y anterior; ambos son indispensables)

Donde representa la ruta actual y ;

2. Si lo ha intentado muchas veces y el classpath está configurado correctamente, pero este error aún ocurre, preste atención a si el código de prueba que utiliza está bajo un determinado nombre de paquete;

Por ejemplo, el siguiente código de prueba:

En el directorio actual donde se encuentra el archivo, ejecute javac TestPlusPlus.java para compilar correctamente y generar el archivo TestPlusPlus.class. En este momento,

usas javaTestPlusPlus Al intentar ejecutar el programa, siempre aparece el error "No se puede encontrar la clase principal o no se puede cargar". Tenga en cuenta en este momento que

La razón por la que no se puede encontrar es porque TestPlusPlus está bajo el nombre del paquete HelloWorld.

Solución:

1. Elimine "package?HelloWorld;" y vuelva a compilar TestPlusPlus.java con javac, luego ejecute javaTestPlusPlus.

2. Cree una nueva carpeta con el mismo nombre de paquete. En este ejemplo, para crear una carpeta HelloWorld, mueva el archivo TestPlusPlus.java a este directorio.

Luego abra una ventana de comandos de DOS en el mismo nivel que la carpeta HelloWorld, ejecute el compilador javacHelloWorld/TestPlusPlus.java,

ejecute javaHelloWorld/TestPlusPlus (o javaHelloWorld.TestPlusPlus también es aceptable ), puede ejecutar el programa java que contiene el nombre del paquete.

Nota: El nombre del paquete no debe contener símbolos especiales como '.' (punto), ' ' (espacio), etc. En este caso, la línea de comando no puede determinar dónde está el punto de separación entre los paquetes. name y el nombre del programa Java es.

Como resultado, la clase principal aún se encuentra o no se puede cargar.

Descripción del principio:

El programa Java ejecuta el archivo de clase. Para las clases con nombres de paquetes, Java trata los nombres de los paquetes como carpetas. "Nombre del paquete + nombre de clase" es equivalente a ". directorio de carpetas de archivos + nombre de clase" para encontrar la clase.