Rumah > Java > javaTutorial > Bagaimana untuk Menyelesaikan Ralat Modul Media JavaFX Semasa Menjalankan Aplikasi JavaFX 11?

Bagaimana untuk Menyelesaikan Ralat Modul Media JavaFX Semasa Menjalankan Aplikasi JavaFX 11?

DDD
Lepaskan: 2024-12-20 17:49:12
asal
471 orang telah melayarinya

How to Resolve JavaFX Media Module Errors When Running a JavaFX 11 Application?

Ralat modul semasa menjalankan aplikasi media JavaFx

Masalah:

Apabila menjalankan aplikasi JavaFX 11 dengan arahan yang disediakan dalam soalannya, ralat ditemui berkaitan dengan akses haram antara kelas dalam javafx.media dan javafx.graphics modul.

Penyelesaian:

Untuk menyelesaikan ralat dan menjalankan aplikasi dengan jayanya, pastikan modul javafx.media diselesaikan sebagai modul bernama semasa pelancaran aplikasi. Ini boleh dicapai melalui salah satu kaedah berikut:

1. Sertakan Modul dalam Argumen --add-modules:

Ubah suai arahan untuk memasukkan javafx.media sebagai modul tambahan dalam argumen --add-modules:

/usr/lib/jvm/java-11-openjdk-amd64/bin/java 
-p ~/.m2/repository/org/openjfx/javafx-swing/11/javafx-swing-11.jar:
~/.m2/repository/org/openjfx/javafx-swing/11/javafx-swing-11-linux.jar:
~/.m2/repository/org/openjfx/javafx-graphics/11/javafx-graphics-11.jar:
~/.m2/repository/org/openjfx/javafx-graphics/11/javafx-graphics-11-linux.jar:
~/.m2/repository/org/openjfx/javafx-base/11/javafx-base-11.jar:
~/.m2/repository/org/openjfx/javafx-base/11/javafx-base-11-linux.jar:
~/.m2/repository/org/openjfx/javafx-controls/11/javafx-controls-11.jar:
~/.m2/repository/org/openjfx/javafx-controls/11/javafx-controls-11-linux.jar:
~/.m2/repository/org/openjfx/javafx-media/11/javafx-media-11.jar:
~/.m2/repository/org/openjfx/javafx-media/11/javafx-media-11-linux.jar 
--add-modules javafx.controls,**javafx.media**
-classpath ...
Salin selepas log masuk

2. Jadikan Kod Anda Sendiri Modular:

Buat fail module-info.java dalam direktori projek anda dengan kandungan berikut:

module my.application {
    requires javafx.controls;
    requires javafx.media;

    // Replace with your Application class' package
    exports com.example.myapp to javafx.graphics;
}
Salin selepas log masuk

Kemudian, lancarkan aplikasi anda dengan argumen --module untuk menentukan modul tersuai anda:

/usr/lib/jvm/java-11-openjdk-amd64/bin/java 
--module my.application
--add-modules javafx.base,javafx.graphics,javafx.controls
-classpath ...
Salin selepas log masuk

3. Gunakan JDK yang Termasuk JavaFX:

Muat turun JDK yang termasuk JavaFX, seperti BellSoft Liberica atau Azul Zulu dan gunakannya untuk menjalankan aplikasi anda.

Nota Tambahan :

  • Adalah disyorkan untuk mengelak daripada meletakkan kedua-dua fail JavaFX JAR dan modul JavaFX pada classpath secara serentak. Ini boleh membawa kepada ralat yang diterangkan dalam soalan.
  • Jika anda menghadapi ralat kompilasi yang berkaitan dengan simbol yang hilang selepas menukar kepada kod modular, pastikan anda telah memasang Java Development Kit (JDK) terkini.
  • Rujuk dokumentasi JavaFX untuk maklumat lanjut tentang modulariti dan Sistem Modul Platform Java: https://openjfx.io/javadoc/11/javadoc/index.html

Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Ralat Modul Media JavaFX Semasa Menjalankan Aplikasi JavaFX 11?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan