Executable jar-file findet class nicht

  • Themenstarter Themenstarter Executer
  • Beginndatum Beginndatum
E

Executer

Gast
Hallo,

ich habe über Eclipse->Export->Executable jar-file eine jar-file erstellt.
Diese jar-file kann ich auf meinem Rechner ausführen....wenn ich sie
allerdings auf meinem laptop starten möchte, sagt er:

"Could not finde the main class: Main. Programm will exit"

Woran liegt das?

Google spuckt lauter unnützes Zeug aus -.-
 
So etwas wie Manifest kann ich nicht finden.
Ich kann lediglich in einem Dropdown menü die main
class auswählen, was ich natürlich gemacht habe....
 
Ein jar-File ist ein Archiv wie zip und kann dementsprechend "geöffnet" werden und die Dateien eingesehen und dort hast du im Ordner META-INF eine Manifest-File, in der die main-Class angegeben sein muss, damit die Datei ausführbar wird!
 
gut ich habs mal von Hand gemacht

jar -cmf <Manifestdatei> <Jar-Name> <Class-Datei>

spuckt mir zwar ne Executable jar file aus....wird aber nicht mehr ausgeführt.
Es erscheint immer kurz das Wartesymbol und danach passiert nix mehr....
 
..und wenn ichs mit der cmd ausführe:

java -jar <Dateiname.jar>

kommt jetzt auch auf dem Laptop:

"Fehler: hauptklasse Main.class konnte nicht gefunden werden oder geladen werden."

Meine Manifest datei direkt bei der .class Datei:

Manifest-Version: 1.0
Created-By: Name
Main-Class: Main.class
 
Hab gedacht es könnte eventuell ein Package Problem sein...
war in eclipse ein "default-package" deshalb hab ich mal eins
erstellt und dann einfach:

jar -cmf Manifest.mf Name.jar package.Main.class

als Antwort von der cmd wenn ichs ausführen will:

kein Hauptmanifestattribut, in Name.jar


Also keine Ahnung wie das funktionieren soll....
 
Du musst das Manifest entweder von Hand erstellen oder durch Eclipse generieren lassen.

Mach mal Export eines normale (nicht runnable) jar - da kannst du einstellen, dass das Manifest generiert werden kann.
 
Das ist falsch kann ich nicht auswählen.
Bei Runnable jar-File erstellt er das Manifest automatisch...
dennoch funktioniert die Jar-Datei immer nur auf dem Rechner,
auf dem ich die Jar-Datei erstellt habe. Ich habe nun eine ausführlichere
Fehlermeldung bekommen können:

Code:
Ausnahme:

MissingFieldException[ Das folgende Pflichtfeld fehlt in der Startdatei: <jnlp>]
	at com.sun.javaws.jnl.XMLFormat.parse(Unknown Source)
	at com.sun.javaws.jnl.LaunchDescFactory.buildDescriptor(Unknown Source)
	at com.sun.javaws.jnl.LaunchDescFactory.buildDescriptor(Unknown Source)
	at com.sun.javaws.jnl.LaunchDescFactory.buildDescriptor(Unknown Source)
	at com.sun.javaws.Main.launchApp(Unknown Source)
	at com.sun.javaws.Main.continueInSecureThread(Unknown Source)
	at com.sun.javaws.Main$1.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)

Und in der Startdatei steht nur unleserliches, codiertes Zeug.
 
Du musst das Manifest entweder von Hand erstellen oder durch Eclipse generieren lassen.

Mach mal Export eines normale (nicht runnable) jar - da kannst du einstellen, dass das Manifest generiert werden kann.

hab das gefunden was du meintest... nützt nichts, gleiche Fehlermeldung wie oben gepostet.
 
Problem gelöst.

Aus irgendeinem Grund werden jar-files automatisch mit dem Web-Player
gestartet oO oO oO?

Ich musste das jetzt manuell umstellen das er das ganznormal mit der SE
macht, jetzt funktioniert alles wunderbar.....

Muss man auch erstmal drauf kommen...
 

Zurück
Oben