Heim >Java >javaLernprogramm >Warum löst meine JavaFX Media-Anwendung einen Modulfehler aus und wie kann ich ihn beheben?
Modulfehler beim Ausführen der JavaFx-Medienanwendung
Der beim Ausführen der JavaFx-Anwendung aufgetretene Fehler ist auf das Java Platform Module System (JPMS) zurückzuführen. , das in Java 9 eingeführt wurde. Dieses System unterteilt Java-Code in Module, jedes mit seinen eigenen Abhängigkeiten und Berechtigungen.
Das Spezifische Der aufgetretene Fehler ist ein „java.lang.IllegalAccessError“, der darauf hinweist, dass die Klasse „com.sun.media.jfxmediaimpl.NativeMediaManager“ (Teil des unbenannten Moduls) nicht auf die Klasse „com.sun.glass.utils.NativeLibLoader“ (in) zugreifen kann das Modul javafx.graphics), da das Modul javafx.graphics das Paket com.sun.glass.utils nicht in das unbenannte Paket exportiert Modul.
Um diesen Fehler zu beheben, stellen Sie sicher, dass das javafx.media-Modul als Modul aufgelöst wird, indem Sie eine der folgenden Methoden verwenden:
Methode 1: Modul einschließen in -- add-modules-Argument:
--add-modules javafx.controls,javafx.media
Methode 2: Code modular gestalten und --module verwenden Argument:
Erstellen Sie einen Modulinfo-Deskriptor für Ihren Code (z. B. module-info.java):
module app { requires javafx.controls; requires javafx.media; exports com.example.app to javafx.graphics; // Replace with your application class's package }
Starten Sie die Anwendung mit dem Argument --module:
java --module app
Methode 3: Verwenden Sie ein JDK, das JavaFX enthält (nicht empfohlen):
Installieren Sie ein JDK, das JavaFX enthält (z. B. OpenJDK mit OpenJFX).
Das obige ist der detaillierte Inhalt vonWarum löst meine JavaFX Media-Anwendung einen Modulfehler aus und wie kann ich ihn beheben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!