Das System 'Hauptklasse konnte nicht gefunden oder geladen werden'? - Fest

Wenn Sie einen Fehler wie 'Hauptklasse konnte nicht gefunden oder geladen werden,' bedeutet dies meistens, dass Sie beim Deklarieren der jeweiligen Klasse beim Schreiben eines Java-Programms einen Fehler gemacht haben müssen.

Der Kontext startet ein Java-Programm, indem ein Java-Befehl an der Eingabeaufforderung ausgeführt wird. Es gibt eine Vielzahl von Fehlern, die normalerweise auf Seiten des Benutzers auftreten.

Hauptklasse konnte nicht gefunden oder geladen werden

Dieser Artikel soll Ihnen alle diese Fehler und Szenarien sowie die Methoden zu ihrer Behebung erläutern.

Ausarbeitung der Syntax 'Java

Bevor wir mit der Fehlerbehebung für das Problem der Java-Funktion beginnen, ist es sehr wichtig zu wissen, warum das Terminal beim Versuch zur Ausführung immer wieder die Fehlermeldung ausgibt. Dies wird auch durch ein grundlegendes Verständnis der Java-Programmiersprache und ihrer Vorgehensweise erleichtert.

Sie werden in der Lage sein, besser zu verstehen, wenn Sie die Syntax des jeweiligen Befehls kennen. Hier liegt das Hauptproblem. Wenn Sie die falsche Syntax verwenden, führt dies zwangsläufig zu einem Fehler.

Dies ist die korrekte Syntax des Java-Befehls, über den wir sprechen:

Java [ …] [ …]

In der obigen Adresse ist die bezeichnet die Option der Befehlszeile. Auch der ist der Name einer vollständig authentischen Java-Klasse. Schließlich die bezeichnet das Argument der Befehlszeile, die während des gesamten Pakets an die Anwendung übertragen wird und gerade eingehalten wird.

Lassen Sie uns Ihnen auch ein Beispiel für einen gültigen Befehl geben, damit Sie besser verstehen:

Java –Xmx100m com.acme.example.ListAppuals Kevin Pfeile Bart

Wenn Sie den oben angegebenen Befehl eingeben, werden diese Operationen als Ergebnis ausgeführt:

  • Der Befehl startet eine Suche, um eine vollständig kompilierte Version zu finden, die der Klasse mit dem Namen 'zugeordnet ist.com.acme.example.ListAppuals'.
  • Sobald die Suche abgeschlossen ist, wird die Klasse geladen.
  • In dieser Phase, sobald die Klasse das Laden beendet hat, gibt der Befehl Platz für die Untersuchung der Klasse, um die Hauptmethode zu finden, die einen Modifikator, einen Rückgabetyp und eine gültige Signatur hat. Lassen Sie uns Ihnen ein Beispiel der Hauptklasse zeigen, die ungefähr so ​​​​aussehen würde:

Public static void main (String [])

Zuletzt ruft die Operation die Methode auf, indem Argumente wie Bart, Pfeile und Kevin in Form der Zeichenfolge [] eingegeben werden.

PS: Wenn Sie mit Problemen wie belästigt sind Die virtuelle Java-Maschine konnte nicht erstellt werdenKlicken Sie, um sie jetzt zu beheben.

Die Gründe dafür, dass die Hauptklasse nicht gefunden wird, sind fehlerhaft

Wenn die Fehlermeldung "Hauptklasse konnte nicht gefunden oder geladen werden" angezeigt wird, bedeutet dies, dass der erste Schritt fehlgeschlagen ist, während Sie versucht haben, die Java-Operation auszuführen. Die Java-Engine konnte die Klasse zum Ausführen nicht finden. Der Java-Befehl konnte die Klasse im Verzeichnis nicht finden.

In bestimmten Fällen müssen Sie das Java-Terminal aktivieren, um den richtigen Speicherort zu finden, indem Sie den richtigen Dateipfad hinzufügen. Der Computer kann die Klasse oder den Speicherort möglicherweise nicht finden, da Sie das Befehlszeilenterminal zum Ausführen des Befehls verwenden. Dieses Problem tritt in den Ziel-IDEs nicht auf, da die IDE einen Zeiger verwendet, um auf das Verzeichnis zu zeigen, das gerade arbeitet.

Lösungen zur Behebung des Hauptklassenfehlers

So wie es viele Gründe gibt, die den Fehler „Hauptklasse konnte nicht gefunden oder geladen werden“ verursachen, gibt es viele Lösungen, um damit umzugehen. Es ist klar, dass der Fehler, den wir betrachten, völlig unabhängig von einem Fehler im System ist.

Es ist größtenteils benutzergeneriert, da wir die Szenarien gesehen haben, die entstehen könnten. In diesem Teil stellen wir Ihnen die besten Methoden vor, mit denen Sie den Fehler in wenigen einfachen Schritten beheben können.

1. Überprüfen Sie das Argument des Klassennamens

Einer der häufigsten Fehler, den die Benutzer machen, ist die Eingabe des Klassennamens in das Argumentfeld. Entweder geben sie den falschen Klassennamen ein oder geben die falsche Form ein, obwohl sie den richtigen Klassennamen eingeben.

In beiden Fällen tritt der Fehler zwangsläufig auf. Da wir die Parameter in die Befehlszeile setzen, betrachten wir den Fall, dass der Benutzer das Argument des Klassennamens in der falschen Form eingibt.

Jetzt werden wir alle ähnlichen Szenarien und Fehler auflisten, die die Benutzer machen können.

  • Der erste Fehler, der passieren kann, ist bei der Eingabe von a einfacher Klassenname. Wenn Sie den Namen der Klasse in einem Paket wie 'deklarierencm.acme.Beispiel, 'dann sollten Sie vorsichtig sein, wenn Sie das betreten vollständiger Klassenname in den Java-Befehl zusammen mit dem Paket.

Eingeben - java com.acme.examples.ListAppuals

Anstelle von

Java-ListeAppuals

  • Achten Sie darauf, den Pfad- oder Dateinamen und nicht anzugeben Deklarieren Sie den Klassennamen Stattdessen ist dies die bessere Option. Manche der Wrongs Einträge, die vorgenommen werden können, sehen wie folgt aus:

Java ListAppuals.class

Java com / acme / example / ListAppuals.class

  • Sie müssen immer rücksichtsvoll sein Gehäuse in den Befehlen. Bei den Java-Befehlen von Programmen wird stark zwischen Groß- und Kleinschreibung unterschieden. Der ganze Zweck geht schief, wenn Sie auch nur einen einzigen Buchstaben falsch eingeben. Das Ergebnis ist der Fehler „Hauptklasse konnte nicht gefunden oder geladen werden“. Irgendein falscher Befehl mit einem Fallfehler würde so aussehen:

Java com.acme.example.listappuals

  • Es ist wichtig, dass Sie sollten es vermeiden, Erklärung der Quelldateiname. Wie wir bereits erwähnt haben, müssen Sie nur darauf achten, die Klasse im richtigen Format mit dem vollständigen Klassennamen zu deklarieren. Der Fehler kann so aussehen:

java ListAppuals.java

  • Der letzte Grund für den Fehler im Zusammenhang mit dem Klassennamen kann sein, wenn Sie einen beliebigen Typ oder ausführen kann einfach das vollständige Schreiben des Klassennamens überspringen.

Wenn Sie solche schlampigen Fehler haben, sei es einer der oben genannten, überprüfen Sie sie und entfernen Sie sie. Danach können Sie erneut versuchen, das Programm auszuführen, und prüfen, ob der Fehler „Hauptklasse konnte nicht gefunden oder geladen werden“ erneut auftritt.

2. Überprüfen Sie den Klassenpfad, um zu beheben, dass die Hauptklasse nicht gefunden oder geladen werden konnte.

Wenn Sie nun alles, was wir in der obigen Methode erwähnt haben, überprüft und korrigiert haben und immer noch denselben Fehler haben, dann war dies wahrscheinlich ein weiterer Grund, der Sie beunruhigt. Möglicherweise konnte der Java-Befehl den verifizierten Klassennamen im Pfad nicht finden.

Dadurch kann die Java-Laufzeitumgebung nach darin enthaltenen Klassendateien und Ressourcen suchen. Das Festlegen eines Klassenpfads ist einfach, und Sie können dasselbe auf zwei verschiedene Arten tun, indem Sie separate Befehle eingeben.

Diese Befehle sind:

C:> sdkTool –classpath classpath1; classpath2…

C:> setze CLASSPATH = Klassenpfad1; Klassenpfad2…

Sie können mehr darüber lesen Klassenpfad setzen or Java-Befehlsdokumentation um mehr über den Klassenpfad zu erfahren.

3. Überprüfen Sie das Verzeichnis, um zu beheben, dass die Hauptklasse nicht gefunden oder geladen werden konnte.

Es ist wichtig, sich daran zu erinnern, dass, wenn wir ein beliebiges Verzeichnis für den Klassenpfad deklarieren, der Namespace und sein Stamm immer übereinstimmen.

Nehmen wir ein Beispiel; wenn Sie „/ usr / local / acme / classes"In den Klassenpfad sucht der Java-Befehl nach der Klasse"com.acme.example.Anhänge".

Der Java-Befehl führt eine Suche nach der folgenden Klasse und dem folgenden Pfadnamen durch:

/usr/loal/acme/classes/com/acme/example/Appuals.class

Wenn Sie andererseits eine andere Adresse wie die folgende in den Klassenpfad eingeben, findet Java nicht die richtige Klasse:

/ usr / local / acme / classes / com / acme / example

Eine andere Sache, um die man sich kümmern muss, ist die Unterverzeichnis. Sie müssen überprüfen, ob es dem FQN ähnlich ist. Wenn die FN Ihrer Klasse "com.acme.example.Appuals" lautet, versucht der Java-Befehl, nach "com.acme.example.Appuals" zu suchen.Appuals.class" in dem "com / acme / Beispiel" Verzeichnis.

Wir geben Ihnen einige Beispiele, indem wir einige Szenarien aufgreifen:

  • Die Klasse, die Sie starten möchten, lautet: com.acme.example.Appuals
  • Das vollständiger Dateipfad Der Name lautet: /usr/local/acme/classes/com/acme/example/Appuals.class
  • Das aktuelles Arbeitsverzeichnis Der Name lautet: / usr / local / acme / classes / com / acme / example /

Diese Szenarien würden folgendermaßen aussehen:

# falsch, FQN wird benötigt

Java Appuals

# falsch, im aktuellen Arbeitsverzeichnis befindet sich kein Ordner 'com / acme / example'

java com.acme.example.Appuals

# falsch, ähnlich wie im obigen Szenario

Java-Klassenpfad. com.acme.example.Appuals

# OK: Ein relativer Klassenpfad wird festgelegt

java –classpath ../../ .. come.acme.example.Appuals

# OK: Es wird ein absoluter Klassenpfad festgelegt

java –classpath / usr / local / acme / classes com.acme.example.Appuals

Hierbei ist zu beachten, dass Sie bei der Eingabe des Klassenpfads auch jede andere Klasse (Nicht-System) eingeben müssen, die die Anwendung benötigt.

4. Überprüfen Sie das Klassenpaket, um zu beheben, dass die Hauptklasse nicht gefunden oder geladen werden konnte.

Wenn sich die oben genannten Lösungen in der Situation, in der Sie sich befinden, als hilfreich erwiesen haben, müssen Sie sich um einige andere Dinge kümmern. Sie müssen überprüfen, ob Sie den Quellcode im entsprechenden Ordner abgelegt haben.

Eine andere zu überprüfende Sache ist, dass die Paket von Ihnen erklärt ist richtig. Wenn Sie versuchen, den Code zusammen mit einer IDA auszuführen, werden Sie wahrscheinlich über das Problem und alle relevanten Informationen informiert.

In dem Fall, den wir in Betracht ziehen, verwenden wir jedoch die Eingabeaufforderung. Es besteht die Möglichkeit, dass Sie den Fehler nicht bemerken und der Fehler "Hauptklasse konnte nicht gefunden oder geladen werden" die Folge ist.

Fazit

Dies waren alle Fehler, die Sie vermeiden oder beseitigen können, um den Fehler zu beseitigen. 'Hauptklasse konnte nicht gefunden oder geladen werden. "

Gehen Sie die von Ihnen geschriebenen Programme gründlich durch, identifizieren Sie die Fehler und wenden Sie die richtige Lösung an.

Jack

Zehn Jahre Erfahrung in Informations- und Computertechnologie. Leidenschaft für elektronische Geräte, Smartphones, Computer und moderne Technologie.