Hauptklasse wird nicht gefunden

kodela

Bekanntes Mitglied
Lang lang hatte anscheinend niemand mehr dieses Problem mit der Hauptklasse. Ich habe aber eines und hänge mich einmal an:

Ein kleines Testprogramm ohne eigenes Fenster, unter NetBeans 8.2 erstellt, soll über die Konsole ausgeführt werden können. Die Hauptklasse 'TvHanoi' ist als 'public' deklariert.

Quelldatei: E:\JAVA\JProjekte\TestProjekte\TvHanoi\src\tvhanoi\TvHanoi.java
Erstellte JAR-Datei: E:\JAVA\JProjekte\TestProjekte\TvHanoi\dist\TvHanoi.jar
Erstellte CLASS-Datei: E:\JAVA\JProjekte\TestProjekte\TvHanoi\build\classes\tvhanoi\TvHanoi.class

Benutzervariable mit dem Namen "Path" für das Verzeichnis des Ordners "bin" des jdk ist angelegt.

Unter E:\Java wurde das Verzeichnis 'JKlassen' angelegt. Für dieses Verzeichnis wurde eine Benutzervariable mit dem Namen "Classpath" angelegt.
Die erstellten JAR- und CLASS-Dateien wurden in das Verzeichnis 'JKlassen' kopiert.

Wenn ich nun von der Konsole aus mit 'java TvHanoi' diese Testanwendung starten möchte, bekomme ich folgende Fehlermeldung:

C:\Users\[Username]\Desktop>java TvHanoi
Fehler: Hauptklasse TvHanoi konnte nicht gefunden oder geladen werden


Was mache ich falsch?
 
Wenn du im Verzeichnis c:\users\username\Desktop bist, wird die class Datei auch da gesucht. Der korrekte Start wäre, wenn du eine Jar erstellst hast: java -jar <pfadZurJarDatei>
 
Beste Antwort
das sieht von der Verzeichnisstruktur her erst einmal so aus, dass die Klasse in einem Package tvhanoi ist. Damit ist die Klasse als tvhanoi TvHanoi anzugeben (also incl. dem Package).

Aber das setzt natürlich voraus, dass die die Klassen im Classpath zu finden sind. Also ggf. mit -cp noch das jar File angeben.

Wenn auch ein Manifest im Jar generiert wurde, dann wäre ein Aufruf womit -jar möglich, wie es LimDul angegeben hat.
 

Zurück
Oben