Was tun, wenn die Hauptklasse nicht gefunden oder geladen werden kann?
Lösung: 1. Der Klassenpfad ist falsch konfiguriert, was dazu führt, dass die Klassendatei nicht geladen werden kann. 2. Der verwendete Testcode befindet sich nicht unter demselben Paket, sodass Sie den Code unter einfügen können gleiches Paket.
Die Betriebsumgebung dieses Tutorials: Windows7-System, Dell G3-Computer, Java10-Version.
Wie kann man es lösen? Die Lösung lautet wie folgt:
1. Da das Problem während der Ausführungsphase auftritt, kann es an einer falschen Konfiguration der Umgebungsvariablen liegen, d. h. der Klassenpfad ist möglicherweise falsch konfiguriert, was dazu führt, dass die .class-Datei nicht geladen werden kann. Anschließend können Sie überprüfen, ob der Klassenpfadpfad konfiguriert ist. Im Allgemeinen lautet die Konfiguration des Klassenpfads wie folgt:
.;%java_home%lib;%java_home%libtools.jar; (beachten Sie, dass die vorherigen . und; unverzichtbar sind )
darunter stellt ; den aktuellen Pfad dar.
2. Wenn Sie es mehrmals versucht haben und der Klassenpfad korrekt konfiguriert ist, dieser Fehler jedoch weiterhin auftritt, achten Sie bitte darauf, ob der von Ihnen verwendete Testcode unter einem bestimmten Paketnamen steht
Zum Beispiel der folgende Testcode:
Führen Sie im aktuellen Verzeichnis, in dem sich die Datei befindet, javac TestPlusPlus.java aus, um die Datei TestPlusPlus.class erfolgreich zu kompilieren und zu generieren. Wenn Sie zu diesem Zeitpunkt javaTestPlusPlus zum Ausführen des Programms verwenden, wird die Fehlermeldung „kann nicht gefunden werden“ angezeigt „Die Hauptklasse kann nicht geladen werden“ wird immer angezeigt. Bitte beachten Sie zu diesem Zeitpunkt, dass der Grund dafür, dass es nicht gefunden werden kann, darin liegt, dass TestPlusPlus unter dem Paketnamen HelloWorld läuft.
Lösung:
1. Entfernen Sie „package HelloWorld;“ und kompilieren Sie TestPlusPlus.java mit javac neu, dann führen Sie javaTestPlus aus.
2. Erstellen Sie einen neuen Ordner mit demselben Paketnamen. Um in diesem Beispiel einen HelloWorld-Ordner zu erstellen, verschieben Sie die Datei TestPlusPlus.java in dieses Verzeichnis.
Öffnen Sie dann ein DOS-Befehlsfenster auf derselben Ebene wie der HelloWorld-Ordner, führen Sie den Compiler javacHelloWorld/TestPlusPlus.java aus, führen Sie javaHelloWorld/TestPlusPlus (oder javaHelloWorld.TestPlusPlus ist ebenfalls akzeptabel) aus und Sie können das Java-Programm ausführen, das das Paket enthält Name.
Hinweis: Der Paketname sollte keine Sonderzeichen wie „.“ (Punkt), „“ (Leerzeichen) usw. enthalten. In diesem Fall kann die Befehlszeile nicht ermitteln, wo die Trennstelle zwischen dem Paketnamen und dem Java-Programm liegt Der Name lautet, und die Hauptklasse wird weiterhin gefunden oder kann nicht geladen werden.
Prinzipbeschreibung:
Das Java-Programm führt die Klassendatei aus. Bei Klassen mit Paketnamen behandelt Java die Paketnamen als zu findende Ordner Art.
Empfehlungen für entsprechende Video-Tutorials: Java-Video-Tutorial
Das obige ist der detaillierte Inhalt vonWas tun, wenn die Hauptklasse nicht gefunden oder geladen werden kann?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undress AI Tool
Ausziehbilder kostenlos

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

CheckSearchsets -ähnliche "MatchentirecellContents" und "Matchcase" ByexpandingOptionssinfindandReplace, sorgen für "Lookin" IssettoValuesand "Innere" toCorrectScope;

Vorbereitungsdauerung von MajoringMavenorgradletobuildajarorwarfile, ExternalizingConfiguration

Die Verwendung von SLF4J in Kombination mit Logback oder Log4J2 ist die empfohlene Möglichkeit, Protokolle in Java -Anwendungen zu konfigurieren. Es wird API- und Implementierungsbibliotheken eingeführt, indem entsprechende Maven -Abhängigkeiten hinzugefügt werden. 2. Rufen Sie den Logger durch den LoggerFactory von SLF4J im Code und schreiben Sie mit parametrisierten Protokollierungsmethoden entkoppelten und effizienten Protokollcode. 3. Definieren Sie das Protokoll -Ausgangsformat, die Ebene, das Ziel (Konsole, die Datei) und die Paket -Level -Protokollregelung über logback.xml oder log4j2.xml Konfigurationsdateien; 4. Aktivieren Sie optional die Funktionsscanning -Funktion der Konfigurationsdatei, um eine dynamische Anpassung der Protokollebene zu erreichen, und Springboot kann auch über den Aktuatorendpunkte verwaltet werden. 5. Befolgen Sie Best Practices, einschließlich

Castorensxml-to-javaObjectMappingviadefaultConventionsorexplicitMapPingFiles; 1) DefineJavaclasses witgers/setzer;

In JavaScript ist die häufigste Methode, um Elemente zu Beginn eines Arrays hinzuzufügen, die Verwendung der Unshift () -Methode. 1. Wenn Sie Unshift () verwenden, können Sie das ursprüngliche Array direkt ändern. Sie können ein oder mehrere Elemente hinzufügen, um die neue Länge des hinzugefügten Arrays zurückzugeben. 2. Wenn Sie das ursprüngliche Array nicht ändern möchten, wird empfohlen, den Erweiterungsoperator (z. B. [NewLement, ... arr]) zu verwenden, um ein neues Array zu erstellen. 3.. Sie können auch die concat () -Methode verwenden, um das neue Element -Array mit der ursprünglichen Nummer zu kombinieren, das neue Array zurückgibt, ohne das ursprüngliche Array zu ändern. Zusammenfassend verwenden Sie Unshift () beim Ändern des ursprünglichen Arrays und empfehlen Sie den Erweiterungsoperator, wenn Sie das ursprüngliche Array unverändert halten.

GotypicaloffersBetterRuntimePerformance withHoGherThroughputandLowerLatency, insbesondere um/o-HeavyServices, DuetoitSLightgoroutinesandefficientScheduler, während Java, obwohl SlowertOstart, Canmatchgoincpu-BoundtaksafterTimization.2.2

TOCHORKWITHJSONINJAVA, Useathird-partylibrary-Likejackson, Gson, Orjson-B, Asjavalacksbuilt-Insupport; 2.FordeSerialisierung, MapjsontojavaObjectSuSusingObjectMapperinjacksonorgson.fromjson;

TheassertKeywordinjavaisUsedTovalidateAsStionsduringDevelopment, ThrowinganasStorionErroriftheConditionisfalse.2.ithastWOforms: AssertCondition; andassertCondition: message; withelatterProvrididing -Kustomerform
