JavaFX Runtime components are Missing???

MiMa

Top Contributor
Ich habe ein Projekt aus Februar 2018 aus dem Archiv genommen und es wieder in Netbeans geöffnet.
Alle Bibliotheken sind richtig verknüpft und Leider erhalte ich Fehlermeldungen die auf eine jfx-impl.xml hin deuten.
Java:
..
warning: [options] system modules path not set in conjunction with -source 10
1 warning
...
...\nbproject\jfx-impl.xml:3550: The following error occurred while executing this line:
...\nbproject\jfx-impl.xml:3578: The following error occurred while executing this line:
...\nbproject\jfx-impl.xml:3597: The following error occurred while executing this line:
...\nbproject\jfx-impl.xml:1251: The following error occurred while executing this line:
...\nbproject\jfx-impl.xml:1259: Unable

In Netbeans habe ich es nicht geschaft die Fehlermeldungen zu beseitigen und da Programm zum laufen zu bringen.

Ich habe das Projekt kopiert und es dann mit IntelliJ geöffnet, habe alle Bibliotheken verknüpft.
Jedenfalls ist es mir gelungen ein Projekt Build ohne Fehler zu erzeugen.
Wenn ich das Projekt dann starte erhalte ich einen JavaFX Fehler
Code:
"C:\Program Files\Java\openjdk-13.0.2\bin\java.exe" "-javaagent:
C:\Program Files\JetBrains\IntelliJ IDEA 2022.2.3\lib\idea_rt.jar=50596:
C:\Program Files\JetBrains\IntelliJ IDEA 2022.2.3\bin" -Dfile.encoding=UTF-8 -classpath "
D:\Programmierung\NetBeansProjects\....\out\production\DMSclient-Liste;
D:\Programmierung\00 Bibliotheken\Apache\log4j\log4j-2.17.2-api.jar;
D:\Programmierung\00 Bibliotheken\Apache\log4j\log4j-2.17.2-core.jar;
D:\Programmierung\00 Bibliotheken\Apache\tika\tika-1.12-app.jar;
D:\Programmierung\00 Bibliotheken\mp3agic\mp3agic-0.9.1.jar;
C:\Program Files\Java\openjfx-13.0.2\lib\javafx-swt.jar;
C:\Program Files\Java\openjfx-13.0.2\lib\javafx.base.jar;
C:\Program Files\Java\openjfx-13.0.2\lib\javafx.controls.jar;
C:\Program Files\Java\openjfx-13.0.2\lib\javafx.fxml.jar;
C:\Program Files\Java\openjfx-13.0.2\lib\javafx.graphics.jar;
C:\Program Files\Java\openjfx-13.0.2\lib\javafx.media.jar;
C:\Program Files\Java\openjfx-13.0.2\lib\javafx.swing.jar;
C:\Program Files\Java\openjfx-13.0.2\lib\javafx.web.jar;
Error: JavaFX runtime components are missing, and are required to run this application

Process finished with exit code 1

Eigentlich sollte alles drin sein um das Programm starten zu können.
Wäre super wenn jemanden auffällt was fehlt, missing componennts könnte alles sein?

Vielen Dank
 
Danke das hat geholfen.
Aber warum ist das denn so?
Die Klasse welche ich vorher ausführen wollte besitzt doch auch eine main Methode?
Java:
 public static void main(String[] args) {
        launch(args);
    }

Ich habe gelernt, das die main Methode immer den Startpunkt einer Applikation ist.
Warum benötige ich denn jetzt eine weitere in einer eigenen Klasse?
Wird die andere Main Methode in der anderen Klasse welche auch die Startfenster beinhaltet
nicht erkannt?

Sollte ich auch in Zukunft Grundsätzlich eine eigene Klasse als Startklasse nur mit
der main erstellen oder ist das von Version zu Version unterschiedlich?
Damals hatte es auch ohne diese zusätzliche Klasse funktioniert.
 
Zuletzt bearbeitet:
Das hängt damit zusammen, wie der Classloader die Klassen lädt und die Klasse mit deiner Main Methode erbt von Application. Das kann problematisch sein, je nachdem, wie die Applikation gestartet wird. (Etwas in der Art meine ich, ist schon zu lange her, dass ich mir das angesehen hatte)

Das braucht man nicht zwingend. Bei meinem Maven Projekt hat das IntelliJ nicht gebraucht. Netbeans brauchte das dann aber.

Daher bei JavaFX einfach diesen Workaround machen und gut ist es.
 

Zurück
Oben