Java Fx Eclipse Projekt exportieren funktioniert nicht?

regex9  19.10.2024, 21:48
  1. SDX: Was ist das für eine Bibliothek?
  2. Verwendest du ein Buildtool (Ant/Gradle/o.ä.)?
  3. Beinhaltet dein JAR-Kompilat (öffne es in einem ZIP-Extraktor wie 7-zip) eine Manifestdatei?
Horst346 
Beitragsersteller
 19.10.2024, 23:18

Sorry, hab mich verschreiben. es ist natürlich Java SDK (also für Klassen und Pakete). 2: Nein, ich verwende kein Buildtool. 3: Ja, wenn ich es entpacke ist eine Meta-INF vorhanden

1 Antwort

(...) ganz of die Fehlermeldung bekomme, dass es zu oft eine module-info gäbe (duplicate module-info).

Die weiteren module-info-Definitionen werden von JavaFX kommen. Beim Build hat Eclipse daraufhin das Problem, entscheiden zu müssen, welche Definition es nun verwendet. Wenn der Build dennoch abgeschlossen wird, wählt Eclipse sicherlich die erste module-info-Datei.

Wenn ich die exportierte Datei mit Java SDX öffnen will, dann passiert nichts.

Da ich nicht weiß, wie sich das bei dir konkret gestaltet: Eine JAR lässt sich über die Konsole (deines OS) starten:

java -jar fileNameOfYourJarApplication.jar

Voraussetzung ist eine (via Manifest) definierte Hauptklasse, die einen Einstiegspunkt beinhaltet. Wenn die Manifestdatei fehlt, sollte es auch so klappen:

java -cp fileNameOfYourJarApplication.jar fullPackageNameOfYourMainClass.NameOfYourMainClass

Wenn der Befehl java nicht gefunden werden kann, kannst du ihn ebenso gegen einen absoluten Pfad zur java.exe (im Ordner deines Java SDK) ersetzen:

"c:\...\java.exe" -jar fileNameOfYourJarApplication.jar
(...) Obwohl ich meine Hauptklasse beim exportieren aber definiert habe (...)

Die Mindestangaben in der Manifestdatei sollten diese sein:

Manifest-Version: 1.0
Main-Class: fullPackageNameOfYourMainClass.NameOfYourMainClass

Wenn die Hauptklasse dann dennoch nicht gefunden wird, wird wohl der Specifier (Package/Klassenname) nicht korrekt sein oder die angegebene Klasse ist keine valide Hauptklasse (entweder ist sie nicht öffentlich oder der Einstiegspunkt fehlt).

Nein, ich verwende kein Buildtool

Dazu würde ich dir raten, denn es vereinfacht die Angelegenheit. Nutze den Guide aus der Dokumentation: https://openjfx.io/openjfx-docs/#maven.