4 Stimmen

Jar ausführbare Datei kann Hauptklasse nicht finden - seltsam

Hallo, ich habe ein seltsames Problem. Ich packe eine Anwendung mit Eclipse, um eine ausführbare Jar-Datei zu erstellen, und wenn ich sie ausführe, erhalte ich den Fehler "Fehler kann Hauptklasse nicht finden [...]".

Wenn ich dasselbe Paket aus der Befehlszeile ausführe, zum Beispiel

  

java -jar app.jar

wird das Programm gestartet.

Was seltsam ist, ist, dass der Fehler nur bei Anwendungen auftritt, die in einer Java 7-Umgebung kompiliert wurden.

Wenn ich das Projekt auf Java 6 einstelle, funktioniert alles einwandfrei.

Was sollte ich tun, um eine ausführbare Java 7-Jar-Datei auszuführen?

Vielen Dank für jede Hilfe.

1voto

Hemant Metalia Punkte 27928

Überprüfen Sie die Version Ihres JRE. Wenn es sich um JRE6 handelt, könnte dies ein Problem sein. Versuchen Sie, Ihr JRE auf JRE7 zu aktualisieren. Das könnte helfen.

1voto

Muhammad Imran Tariq Punkte 21390

Sie müssen die Hauptklasse in der Manifestdatei festlegen

Beispiel Manifestdatei

Manifest-Version: 1.0
Created-By: 1.3.1 (Sun Microsystems, Inc.)
Main-Class: com.package.MainClassName
Class-Path: oc4j.jar

Stellen Sie sicher, dass Sie alle diese Dinge wie in der Beispiel-Jar-Datei festgelegt haben

0voto

Akash Yadav Punkte 2371

Dieses Problem tritt auf, wenn die JVM nicht in der Lage ist, die Hauptklasse zu finden, die mit der Jar-Datei verbunden ist. Die JVM verwendet das Main-Class-Attribut aus der Manifest.mf, um die Hauptklasse zu identifizieren.

Es scheint, als hätten Sie vergessen, das Main-Class-Attribut zur Manifest-Datei hinzuzufügen, die zur Erstellung der Jar-Datei verwendet wurde, möglicherweise kann Ihnen http://www.skylit.com/javamethods/faqs/createjar.html helfen

0voto

thejartender Punkte 9219

Standardmäßig ist ein Jar nicht ausführbar

Java-Archive werden häufiger als Bibliotheken verwendet, wobei das jar-Format den Code in einen einzelnen Ordner komprimiert. Ein solcher Code wird normalerweise nicht als Anwendung (standalone) ausgeführt, aber es gibt eine Möglichkeit, eine Jar-Datei in eine ausführbare Anwendung umzuwandeln, indem man die Manifest-Datei verwendet.

Erstellen Sie einfach eine Manifest-Datei, die angibt, welche Klasse die 'main'-Methode enthält, um Ihr Jar ausführbar zu machen, und fügen Sie das Manifest in Ihre .jar-Datei ein

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X