Rumah >Java >javaTutorial >Mengapa Aplikasi Media JavaFX Saya Membuang Ralat Modul, dan Bagaimana Saya Boleh Membetulkannya?

Mengapa Aplikasi Media JavaFX Saya Membuang Ralat Modul, dan Bagaimana Saya Boleh Membetulkannya?

Linda Hamilton
Linda Hamiltonasal
2024-12-16 07:19:24528semak imbas

Why Does My JavaFX Media Application Throw a Module Error, and How Can I Fix It?

Ralat modul semasa menjalankan aplikasi media JavaFx

Ralat yang dihadapi semasa menjalankan aplikasi JavaFx adalah disebabkan oleh Java Platform Module System (JPMS) , yang telah diperkenalkan dalam Java 9. Sistem ini membahagikan kod Java kepada modul, setiap satu dengan set kebergantungan dan kebenaran.

Ralat khusus yang dihadapi ialah "java.lang.IllegalAccessError" yang menunjukkan bahawa kelas "com.sun.media.jfxmediaimpl.NativeMediaManager" (sebahagian daripada modul yang tidak dinamakan) tidak boleh mengakses "com.sun kelas .glass.utils.NativeLibLoader" (dalam modul javafx.graphics) kerana modul javafx.graphics melakukan tidak mengeksport pakej com.sun.glass.utils ke modul yang tidak dinamakan.

Untuk menyelesaikan ralat ini, pastikan modul javafx.media diselesaikan sebagai modul dengan menggunakan salah satu kaedah berikut:

Kaedah 1: Sertakan modul dalam --add-modules argumen:

--add-modules javafx.controls,javafx.media

Kaedah 2: Jadikan kod modular dan gunakan --module argument:

Buat deskriptor maklumat modul untuk kod anda (cth. , 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
}

Lancarkan aplikasi dengan --module hujah:

java --module app

Kaedah 3: Gunakan JDK yang termasuk JavaFX (tidak disyorkan):

Pasang JDK yang termasuk JavaFX (cth., OpenJDK dengan OpenJFX) .

Atas ialah kandungan terperinci Mengapa Aplikasi Media JavaFX Saya Membuang Ralat Modul, dan Bagaimana Saya Boleh Membetulkannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn