Error: no se ha podido encontrar ni cargar la clase principal

Java se utiliza generalmente para una codificación sofisticada que desde aplicaciones móviles hasta aplicaciones web y servicios web. Realmente hay un uso interminable de Java en esta era de avances tecnológicos.

Java ofrece ciertas ventajas a los que hacen referencia la mayoría de desarrolladores Java para sus necesidades de codificación. Uno de los principales ventajas del uso Java es que es independiente de cualquier otra plataforma.

Esto significa que puede funcionar en cualquier sistema y no requiere ningún hardware o software específico.

Es rápido y proporciona una opción segura en cuanto a los lenguajes de programación. Si ya hace tiempo que estudia el desarrollo, tal vez estará familiarizados con la frase «Compila una y correr para siempre».

Qué es compilar?

Os preguntáis qué significa esto?

Bueno, para los que no habéis oído hablar, dejadme que os cuente.

Una vez que haya generado un código de bytes, puede cambiar a cualquier dispositivo y se podrá convertir el código de la máquina y ejecutarlo perfectamente sin que tenga que hacer nada. Compila un código una y ejecute para siempre. Simple como eso. Derecho?

Para divertido y sencillo que parezca, compilar es un agujero en sí mismo. Así que si se encuentra llorando en medio de codificar porque tiene problemas para compilar el programa, no se asuste!

Errores de compilación

Esta guía está escrita específicamente para ayudarle a identificar problemas básicos y sus soluciones. Para obtener información sobre por qué «no entrar en pánico» es una idea tan fantástica, consulte este artículo en su mayoría no relacionado Me refiero al proceso de resolución de problemas con más detalle.

Problemas de compilación y ejecución código Java puede surgir de un conjunto diverso de motivos. Normalmente esto ocurre cuando intente ejecutar su programa Java utilizando un Línea de comandos Java que tiene una clase principal determinada. Qué es lo que pasa realmente aquí? Poniéndolo de la manera más sencilla posible, Java no es capaz de encontrar el fragmento de código asociado al que intenta hacer.

en Java, Un programador intentará crear clases que contengan todo tipo de cosas, como objetos, métodos o funciones, ya través de todo esto, obtendrá el resultado final de hacer «algo» con esta clase. En su escenario específico, Java no hemos podido encontrar la clase que busca, pero quizás con la ayuda de los droides que buscamos podemos encontrar una solución.

Si es principiante, es fundamental que comprendéis algunas cosas antes. aprender sobre Java las clases pueden ser complejas y confíe en mí, en un momento puede que tenga ganas de perderla, pero aún no renuncia a la esperanza. Esta guía le ayudará a resolver los problemas que ha tenido y, si no lo hace, al menos aprenderá algo que no sabíais. Gana-gana!

Encontrará en nuestro sitio muy útil, pero tiene otros tipos de problemas en los códigos de error? Mirad esto Lista de códigos de error definitiva de PS4, O eso es muy común Se ha explicado un error al recuperar la información del servidor de Google Play!

Por lo tanto, primero es lo primero: ¿qué es un Classpath?

Un camino de clase es un parámetro que a Compilador de Java usos para especificar una ubicación definida por el usuario.

Esta ubicación la define una línea de comandos o puede utilizar una variable de entorno, que es una historia para otro día y hora. De momento, recordadlo el directorio de classpath es utilizado para ClassLoaders. El propósito es simple, encontrar y cargar una clase.

Tanto como aprender sobre el concepto de Classpath está incluido en Java, Es igual de complejo e ignorado por muchos aspirantes a desarrolladores.

Sinceramente, si no dais bastante importancia al aprendizaje Classpath, A continuación, cingueu sesión para hacer un viaje lleno de dificultades. Es una dura verdad, pero es mejor afrontarla que terminó odiando la programación sólo porque no la podría entender correctamente. De hecho, cuando haya terminado de aprender los conceptos básicos, necesita hacer el segundo aprender es CLASSPATH a Java.

«Lo que impide que Java se utilice lo más ampliamente posible es que no ha habido ninguna implementación de código abierto que tenga un uso muy extendido». – Brian Behlendorf

Suena alguna campana?

Así que ha intentado codificar algo … y no funcionó. ¿Qué pasa con eso? A veces, aquellos que son autodidactas acaban perdiendo las pequeñas cosas que se supone que se deben aprender al principio. Esta podría ser también la fuente de su problema actual, en este caso mi trabajo se hace mucho más fácil. El código siguiente le parece familiar?

importa java.io.File;

importa java.text.NumberFormat;

importa java.util.ArrayList;

importa java.util.Arrays;

importa java.util.List;

importación org.apache.log4j.Logger;

clase pública SpatialModel {

privado VensimHelper vh;

public static final String DLL_LIBNAME_PARAM = «vensim_lib_nam»;

public static final String MODEL_PATH_PARAM = «vensim_model_path»;

privado estático final int VENSIM_CONTEXT_CREATION_MAX_FAILURE_COUNT = 10;

public SpatialModel () lanza SpatialException {

Cadena libName = System.getProperty (DLL_LIBNAME_PARAM);

Cadena modelPath = System.getProperty (MODEL_PATH_PARAM);

if (libName == null || libName.trim (). equals ( «»)) {

log.error ( «El nombre de la biblioteca Vensim debe establecerse con -D» + DLL_LIBNAME_PARAM);

lanzar una nueva SpatialException ( «El nombre de la biblioteca Vensim debe establecerse con -D» + DLL_LIBNAME_PARAM);

}

if (modelPath == null || modelPath.trim (). equals ( «»)) {

log.error ( «El camino del modelo se debe establecer con -D» + MODEL_PATH_PARAM);

lanza una nueva SpatialException ( «El camino del modelo se debe definir con -D» + MODEL_PATH_PARAM);

}

for (int i = 0; y

probar {

log.info ( «creación de un nuevo ayudante Vensim n tdll lib:» + libName + » n t camino del modelo:» + modelPath);

vh = nuevo VensimHelper (libName, modelPath);

} Catch (e llançable) {

log.error ( «Se ha producido una excepción en inicializar Vensim intente:» + i, e);

}

}

if (vh == nulo) {

lanzar una nueva SpatialException ( «No se puede inicializar Vensim»);

}

}

public static void main (cadena[] args) lanza VensimException {

mucho antes = System.currentTimeMillis ();

Cadena libName = System.getProperty (DLL_LIBNAME_PARAM);

Cadena modelPath = System.getProperty (MODEL_PATH_PARAM);

if (libName == null) {

libName = «libvensim»;

}

if (modelPath == nulo) {

modelPath = «~ / BassModel.vmf»;

}

System.setProperty (DLL_LIBNAME_PARAM, libName);

System.setProperty (MODEL_PATH_PARAM, modelPath);

if (args.length> 0 && args[0].equals ( «información»)) {

System.out.println (nuevo VensimHelper (libName, modelPath) .getVensimInfo ());

} Else if (args.length> 0 && args[0].equals ( «varas»)) {

VensimHelper helper = nuevo VensimHelper (libName, modelPath);

cuerda[] vars = helper.getVariables ();

para (String var: vars) {

System.out.println (helper.getVariableInfo (var));

}

} Más {

Archivo f = nuevo archivo ( «.»);

System.out.println (f.getAbsolutePath ());

SpatialModel sm = new SpatialModel ();

}

System.out.println ( «Tiempo de ejecución:» + (System.currentTimeMillis () – antes));

}

}

SÍ! Esta es exactamente la que probé. Por tome pensando que podría felicitar mis habilidades de análisis. Siguiendo, aquí tiene un área en la que se ha equivocado. Después de ejecutar este código, es posible que aparezca el siguiente error: «No se pudo encontrar ni cargar la clase principal.»

Este código de error es sencillo de averiguar, ya que la solución se llama el mismo error:

  • Java no puede localizar el archivo de clase principal. Para solucionarlo, asegúrese de que añada una ubicación de su archivo .class en la ruta de clase especificada.
  • Para ello, debe utilizar el archivo Preferencias del IDE.
  • Por lo tanto, si utiliza Eclipse intente: Proyecto -> Propiedades -> Ruta de construcción de Java -> Agregar una carpeta de clases.

Consejo profesional: Hay dos tipos diferentes de separadores Classpath. Para Windows es un punto y coma «;» y para Linux, es un dos puntos: Hay muchas otras diferencias clave en los códigos de Windows y Linux. Si está deseando obtener más información sobre las diferencias entre los códigos Java de Windows y Linux, aquí tenéis un artículo que le ayudará.

Qué hacer cuando la clase se encuentra en un paquete

Al llamar al orden siguiente, puede que tenga que volver a tratar el error de nuevo:

java -classpath. TheClassName

Para resolver este problema, realice un nombre completo, tales como:

java -classpath. thepackagename.TheClassName

Recuerde que esta orden se debe llamar desde el mismo directorio donde thepackagename existe el directorio. Esto es realmente fácil de perder, pero es muy crucial.

Trabaja con Eclipse?

Qué es Eclipse? Es una plataforma de código abierto que le permite desarrollar potencialmente su nueva aplicación Java, vuestra applet u otra forma de código mediante un IDE que es común y familiar entre la mayoría de desarrolladores.

Haga una limpieza

Hay muchas cosas que impiden Java para compilar correctamente y este es uno de ellos. Una limpieza sencilla ayuda:

project clean .. limpieza todos los proyectos

Desea hacer una limpieza cada vez que ahorra? Consulte el método a este enlace para formatear y limpiar el código cada vez que guarde en Eclipse.

GUÍA RELACIONADA  Cómo asegurarse de que su sitio web llega a un público local

Os preguntáis una manera de ejecutar su máquina Windows en un «modo limpio»? Consulte las breves instrucciones Aquí os cuento qué debe buscar en Google sobre «Arranque limpia».

PATH y CLASSPATH son lo mismo?

Mi respuesta es que no. Por muy confusas que puedan ser las terminologías, todavía hay bastantes diferencias entre ellas.

PATH se utiliza para localizar órdenes a Java, mientras que por otra parte se utiliza CLASSPATH para localizar Archivos de clase Java. Se dice que Classpath es una variable de entorno, que es utilizada para Máquina virtual Java. A continuación se muestra una imagen adjunta el archivo Java construir el camino.



Como anulo Classpath en Java?

Confundido sobre cómo funciona la sustitución en Java? A veces, la solución a un problema está justo debajo de la nariz y quizás por eso no lo puede señalar.

Puede hacer la sustitución de Classpath Java mediante -cp o bien Clase de ruta. Hacedlo mientras ejecuta el programa Java.

Esta es una de las mejores maneras de hacer funcionar simultáneamente diferentes aplicaciones Java en la misma máquina. Hay una manera general de definir un Classpath para aplicaciones Java, que puede hacer creando un programa de inicio para Java y establecer Classpath. Puede hacerlo a través de:

CLASSPATH = / home / probador / clases
java -cp $ Prueba CLASSPATH

Java Classpath señalará por defecto el directorio actual que se denota con «.» Aún así, buscará cualquier otra clase, ya que sólo se encuentra en el directorio actual.

conclusión

Considerándolo todo, Java puede ser un lenguaje valioso en esta época y se domina perfectamente, aún así, el camino hacia el dominio Java podría ser realmente rocoso. Una vez superada la fase de aprendizaje, os sorprenderá de las implementaciones que proporciona Java en varias plataformas. ¿Está pensando en tomar en serio toda la programación ya buscarla? Software Java gratuito? Descargue ahora mismo.

Os preguntáis qué pueden significar todos estos códigos de error HTTP mientras navega por la web? prueba esto artículo aquí sobre Error Codes Pro. Escribí sobre la lista de códigos de error HTTP!

Deja un comentario