Java "Hauptklasse konnte nicht gefunden oder geladen werden"?

1 Antwort

Vom Beitragsersteller als hilfreich ausgezeichnet

Wenn du tatsächlich versuchst, die JAR-Datei mit java Test.jar auszuführen, dann versuche es mal mit java -jar Test.jar.

Mit java Test.jar sagst du der JVM nämlich nichts anderes als: "Suche im aktuelle Class-Path die Klasse jar im Package Test und führe ihre main-Methode aus."


qxa15142 
Beitragsersteller
 29.03.2019, 16:57

Uhm. Das hat funktioniert. Danke...

0
Isendrak  29.03.2019, 17:05
@qxa15142

In deinem Fall könntest du auch java -cp Test.jar greyscale_converter verwenden, heißt für die JVM: "Erweitere den Default-Cass-Path um den Inhalt von Test.jar, dann suche im Class-Path die Klasse greyscale_converter und führe ihre main-Methode aus.".

"Lustig" wird das ganze dann, wenn man z.B. mehrere Klassen mit einer main-Methode in einem JAR hat. Mit java -jar Test.jar würde dann die main-Methode jener Klasse die im Manifest (sofern vorhanden) als "Main-Class" angegeben ist (z.B. grayscale_converter) ausgeführt werden, aber mit java -cp Test.jar foo.bar.KlasseXY die der Klasse KlasseXY im Package foo.bar.

1