Main-Klasse wird beim Aufruf des JARs nicht gefunden

Status
Nicht offen für weitere Antworten.

Novanic

Bekanntes Mitglied
Hi Leute,

ich hasse es!!! Jeeeeedes mal das Gleiche! Ich will mir einfach nur schnell ein JAR bauen und es ausführen. Das JAR wird inklusive Manifest-Datei mit einem Ant-Skript erstellt. Im Endeffekt sitz ich jetzt wieder den halben Tag daran und es will einfach nicht funktionieren!

Egal wie ich das JAR ausführen möchte, es erscheint auf der Kommandozeile immer die folgende Ausgabe:

"Exception in thread "main" java.lang.NoClassDefFoundError: de/novanic/foobar/Main"

Die Main-Klasse wird also nicht gefunden. Wie kann das sein?


Versuch 1: java -jar foobar.jar

Versuch 2: java -classpath .;foobar de.novanic.foobar.Main

Versuch 3: java -classpath .;foobar.jar de.novanic.foobar.Main

Versuch 4: java -cp .;foobar -jar foobar.jar

Versuch 5: java -cp .;foobar.jar -jar foobar.jar

Mehr Versuche zum Aufrufen eines JARs fallen mir nicht ein...


Das Manifest sieht wie folgt aus:

Manifest-Version: 1.0
Ant-Version: Apache Ant 1.7.0
Created-By: 1.6.0-b105 (Sun Microsystems Inc.)
Main-Class: de.novanic.foobar.Main

Und das JAR-Archiv hat folgende Struktur:

META-INF\MANIFEST.MF
de\novanic\foobar\Main.class

Sieht jemand einen Fehler? Oder was könnte ich noch probieren?

Danke schonmal im Voraus!

Gruß Nova
 
G

Guest

Gast
Ist die Klasse in der Jar-Datei drin?
Hast du nicht versehentlich ein Verzeichnis zu viel in die Jar Datei verpackt. z.B. classes/de/... usw.?
 

Novanic

Bekanntes Mitglied
Nein, die Klasse (class-Datei) ist richtig drin, wenn ich das JAR mit WinRAR öffne, sehe ich direkt den Ordner "META-INF" und den Ordner "de"...
 
G

Guest

Gast
Novanic hat gesagt.:
Nein, die Klasse (class-Datei) ist richtig drin, wenn ich das JAR mit WinRAR öffne, sehe ich direkt den Ordner "META-INF" und den Ordner "de"...
OK, ich gehe auch davon aus, dass die Klasse Main darin enthalten ist. Was ist mit dem Aufruf (Beachte das Semikolon nach der Jar-Datei)?:

java -cp .;foobar.jar; de.novanic.foobar.Main

Ich gehe davon aus, du führst es unter Windows aus. Unter Linux Doppelpunkt statt Semikolon verwenden.
 

Novanic

Bekanntes Mitglied
Danke Wildcard, das hab ich jetzt auch gerade herausgefunden und das war auch der Fehler.
In der Manifest stand ein falsch formatierter class-path. Ich hab jetzt einfach die Classpath-Generierung ausgeschaltet und danach lief es. Was für ein Schrott... Es wurde noch nichtmal die Main-Klasse gefunden, die ich explizit mit angegeben habe...

Danke für die Hilfe.

Gruß Nova
 
G

Gast

Gast
was ist denn an der manifest datei von oben falsch formatiert?
 

Murray

Top Contributor
Novanic hat gesagt.:
In der Manifest stand ein falsch formatierter class-path. Ich hab jetzt einfach die Classpath-Generierung ausgeschaltet und danach lief es. Was für ein Schrott... Es wurde noch nichtmal die Main-Klasse gefunden, die ich explizit mit angegeben habe...
Selbst dann hätte Variante 3 funktionieren müssen - zumindest dann, wenn der Aufruf aus dem Verzeichnis erfolgt ist, in dem das Jar-File lag.
 

Novanic

Bekanntes Mitglied
Hm, also den Classpath hatte ich oben im Manifest weggelassen, weil ich davon ausgegangen bin dass der Classpath genommen wird den ich explizit angegeben habe. Die Main-Klasse hätte der Java-Interpreter aber trotzdem finden müssen, da es sich ja nur um ein Jar gehandelt hat, dass ich auch direkt aus dem gleichen Ordner aufgerufen habe. Warscheinlich war die Mainfest-Datei irgendwie ungültig, durch den falsch formatierten Classpath...
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
B Übernommene Variablen(werte) aus der Main-Klasse ändern? Allgemeine Java-Themen 9
V main(...) aus Klasse in PDF starten? Allgemeine Java-Themen 3
P Zugriff von Klasse 2 auf Klasse 1 (die main methode hat) Allgemeine Java-Themen 5
A Was haltet ihr von einer standardisierten Main Klasse? Allgemeine Java-Themen 4
E Klasse dynamisch über main-Methode aufrufen Allgemeine Java-Themen 9
P Fehler: Hauptklasse Main konnte nicht gefunden oder geladen werden Ursache: java.lang.ClassNotFoundException: Main Allgemeine Java-Themen 24
urmelausdemeis Exception in thread "main" java.lang.Error: Unresolved compilation problem: Allgemeine Java-Themen 7
Calli11 Was muss ich hier in die Main schreiben, damit das Programm ausgeführt wird? Allgemeine Java-Themen 4
Encera Zweite Main-Methode zuschalten Allgemeine Java-Themen 18
Splayfer Problem: no main manifest attribute Allgemeine Java-Themen 3
M Keine weitere Eingabe in der Main möglich. Eventueller Ansatz über while. Allgemeine Java-Themen 8
F Konstante an main - Argumenten initialisieren Allgemeine Java-Themen 1
S Exception in thread "main" java.lang.NullPointerException at FamilienApp.main(FamilienApp.java:15) Allgemeine Java-Themen 1
F Was ist der Dateityp meines Parameters für die Main Methode. Allgemeine Java-Themen 6
E HILFE !! Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/io/FileUtils Allgemeine Java-Themen 4
W Warum muss void main() public sein? Allgemeine Java-Themen 3
G Programm, das nach abgearbeiteter main Methode weiterläuft Allgemeine Java-Themen 72
javaerd Binomialkoeffizient ausrechnen, Exception in thread "main" java.lang.StackOverflowError Allgemeine Java-Themen 6
L sortiertes Array im main aufrufen klappt nicht. Allgemeine Java-Themen 3
Tort-E Manifest Main-Class Allgemeine Java-Themen 8
J Exception in thread "main" java.lang.NoClassDefFoundError Allgemeine Java-Themen 4
A main-class Not found Allgemeine Java-Themen 3
A Konstrukt ohne Main für Xml-Parser Allgemeine Java-Themen 1
P JDK installieren Error: Could not find or load main class HelloWorld.java Allgemeine Java-Themen 3
I JFrame Icon in Main übergeben Allgemeine Java-Themen 1
Phash Can't find Main Class Allgemeine Java-Themen 4
X Could not find the main class programm will exit (textdokument) Allgemeine Java-Themen 3
127.0.0.1 Subversion neues SVN Projekt, keine Main gefunden ?! Allgemeine Java-Themen 7
S Could not find the main class Allgemeine Java-Themen 7
B Mal wieder "Could not find the main class" Allgemeine Java-Themen 3
C Could not find the main class. Allgemeine Java-Themen 15
I Main wird nicht gefunden Allgemeine Java-Themen 3
B Threads Main Thread warten auf abgebrochen Task warten lassen Allgemeine Java-Themen 25
A Could not find main class: start Allgemeine Java-Themen 5
S main() class finden Allgemeine Java-Themen 7
hdi Could not find main class? Allgemeine Java-Themen 8
B Cannot find main-claas... Allgemeine Java-Themen 21
G jar Datei findet Main Class nicht... Allgemeine Java-Themen 2
P Java Editor Could not find the main class GUI. Programm will exit. Allgemeine Java-Themen 3
E Programm von Main Methode starten Allgemeine Java-Themen 9
BattleMaster246 Could not find the Main class Allgemeine Java-Themen 30
reibi Main-Class in Jarfile Allgemeine Java-Themen 3
G Hauptthread anhalten / Unterschied zwischen Main-Thread und dialogelement-Thread Allgemeine Java-Themen 2
badfish Inerhalb der [void main] auf ein Objekt der [protected void] zugreifen Allgemeine Java-Themen 13
N Probleme mit .jar 'Could not find main class' Allgemeine Java-Themen 3
N Exception in thread "main" java.lang.UnsatisfiedLinkError: no lwjgl in java.library.p Allgemeine Java-Themen 4
J Main-Thread soll auf alleKinder Threads warten Allgemeine Java-Themen 5
B Main Thread Status abrufen Allgemeine Java-Themen 4
N import com.sun.tools.javac.Main; Allgemeine Java-Themen 1
B UML: Main classe verschwindet nach code generierung nicht?! Allgemeine Java-Themen 4
I Signatur von Main-Methoden? Allgemeine Java-Themen 29
T zu Beginn der main: Heap space ermitteln und hochsetzen Allgemeine Java-Themen 11
J Applet in JAR packen - was muss in main() stehen? Allgemeine Java-Themen 12
E beim Ende der main() das Programm nicht beenden Allgemeine Java-Themen 3
J Unicode: cmd parameter (main args); exec params; filenames Allgemeine Java-Themen 2
V Mehrere main() in jar, wie starten? Allgemeine Java-Themen 4
J Methode nicht ausführbar in main Allgemeine Java-Themen 7
P Kann .jar nicht ausführen - main class not found Allgemeine Java-Themen 6
B Jar File und die Main Klassen Allgemeine Java-Themen 3
M zwei main-Methoden Allgemeine Java-Themen 7
L static main - Spezifikation? Allgemeine Java-Themen 7
J Exception in thread "main" java.lang.OutOfMemoryEr Allgemeine Java-Themen 26
G [JDK 6u2] - JAR Failed to load Main-Class manifest attribute Allgemeine Java-Themen 6
G Programm ohne Main Allgemeine Java-Themen 10
M Parameter an main übergeben aber wie? Allgemeine Java-Themen 4
J jar-Datei enthält keine Main-Class Allgemeine Java-Themen 22
C Mehrere main-Klassen in JAR Allgemeine Java-Themen 2
S Exception in Thread "main" java.lang.NoClassDef. b Allgemeine Java-Themen 2
G "Could not find the main class. Program will exit" Allgemeine Java-Themen 20
A Warum gibts die Main und was sollte drin stehen? Allgemeine Java-Themen 31
B Exception in thread "main" java.lang.NoClassDefFou Allgemeine Java-Themen 12
S Programmlogik, wo ist die Main? Allgemeine Java-Themen 9
C Mehrere main-Methoden in einer jar Allgemeine Java-Themen 7
J Warum heißt es eig. "public static void main" ? Allgemeine Java-Themen 4
G DBzugriff funktioniert nach 'Build Main Project' nicht mehr Allgemeine Java-Themen 2
P Exception in thread "main" java.lang.NoClassDefFou Allgemeine Java-Themen 3
P Exception in thread "main" java.lang.NoClassDefFou Allgemeine Java-Themen 15
P Exception in thread "main" java.lang.NoClassDefFou Allgemeine Java-Themen 3
S wie übergebe ich eine Variable aus einer Methode an main() ? Allgemeine Java-Themen 16
B Exception in thread "main" java.lang.OutOfMemoryEr Allgemeine Java-Themen 5
S Exception in thread "main" java.lang.StringIndexOu Allgemeine Java-Themen 9
R Ausführen von *.JAR || "Could not find main class" Allgemeine Java-Themen 7
I "Could not find the main class. Program will exit" Allgemeine Java-Themen 6
L boolean aus der main übergeben? Allgemeine Java-Themen 12
H jar-file in anderem main programm ausführen Allgemeine Java-Themen 2
M Klassenname in main-Methode ausgeben? Allgemeine Java-Themen 29
G Exception in thread "main" :? Allgemeine Java-Themen 5
E Exception in Thread "main" java.lang.NoClassDefFou Allgemeine Java-Themen 5
B Could not find the main class Allgemeine Java-Themen 2
M Methodenübersicht einer Klasse einsehen Allgemeine Java-Themen 14
Jose05 Java-Klasse im extra cmd-Fenster ausführen Allgemeine Java-Themen 3
torresbig Klasse mit extends Calendar über Methoden ändern (Hirnblockade) Allgemeine Java-Themen 7
A Zweite Service Klasse beim Kompilieren Allgemeine Java-Themen 6
B Ein Objekt einer Klasse mehreren anderen Klassen zur Verfügung stellen? Allgemeine Java-Themen 6
Atten007 Java-Klasse auf macOS entpacken? Allgemeine Java-Themen 2
M Klasse durch Klassen Aufteilung verbessern, aber wo? Allgemeine Java-Themen 1
E Eine Methode einer extendeten Klasse deakitivieren Allgemeine Java-Themen 12
H Kombination Interface und Abstrakte Klasse bei Generics Allgemeine Java-Themen 3
EinNickname9 Best Practice Singleton und Singleton mit Instanz zu anderer Klasse -Pattern Allgemeine Java-Themen 30
Y ImagePanel von anderer Klasse in eine MainFrame Klasse hinzufügen. Allgemeine Java-Themen 1

Ähnliche Java Themen

Neue Themen


Oben