Heim >Java >javaLernprogramm >Wie löst man Konflikte im JavaFX-Medienmodul und IllegalAccessError?

Wie löst man Konflikte im JavaFX-Medienmodul und IllegalAccessError?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-20 16:29:11732Durchsuche

How to Resolve JavaFX Media Module Conflicts and IllegalAccessError?

Fehler im JavaFX Media-Anwendungsmodul

Frage:

Beim Ausführen einer JavaFX 11-Anwendung Aufgrund eines Moduls tritt ein Fehler auf Konflikt:

java.lang.IllegalAccessError: class com.sun.media.jfxmediaimpl.NativeMediaManager (in unnamed module @0x4d7be377) cannot access class com.sun.glass.utils.NativeLibLoader (in module javafx.graphics) because module javafx.graphics does not export com.sun.glass.utils to unnamed module @0x4d7be377

Antwort:

Der Fehler deutet darauf hin, dass das JavaFX-Medienmodul nicht ordnungsgemäß als Modul aufgelöst wird, was zu dem Konflikt führt. Um dieses Problem zu beheben, stellen Sie sicher, dass das Modul javafx.media im Modulpfad enthalten ist.

Drei Möglichkeiten, den Modulkonflikt zu lösen:

1. Fügen Sie javafx.media in --add-modules ein:

/usr/lib/jvm/java-11-openjdk-amd64/bin/java \
-p ~/.m2/repository/org/openjfx/javafx-swing/11/javafx-swing-11.jar: \
... \
-classpath ~/development/intellij/OpenPatrician/OpenPatricianStandalone/target/classes: \
... \
--add-modules javafx.controls,javafx.media

2. Gestalten Sie Ihren Code modular und fügen Sie „requires javafx.media;“ hinzu. zu Ihrem Moduldeskriptor.

3. Verwenden Sie ein JDK, das JavaFX enthält (z. B. BellSoft Liberica oder Azul Zulu).

Zusätzliche Hinweise:

  • Stellen Sie sicher, dass die JavaFX-Module dies nicht auch tun im Klassenpfad enthalten.
  • Wenn Sie Maven verwenden, schließen Sie das Modul javafx.media als Abhängigkeit ein Ihre pom.xml.

Das obige ist der detaillierte Inhalt vonWie löst man Konflikte im JavaFX-Medienmodul und IllegalAccessError?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn