JavaFX 11: IllegalAccessError semasa mencipta Label
JavaFX 11 memperkenalkan perubahan ketara pada rangka kerja, memisahkannya daripada JDK. Perubahan ini telah membawa kepada isu biasa di mana pengguna menghadapi IllegalAccessError semasa membuat Label atau kawalan lain.
Punca Isu
Ralat disebabkan oleh konflik antara modul JavaFX dan laluan modul projek. JavaFX 11 menggunakan sistem modular, di mana perpustakaan dibungkus sebagai modul yang boleh ditambah pada projek anda mengikut keperluan. Walau bagaimanapun, secara lalai, IntelliJ IDEA tidak mengkonfigurasi laluan modul untuk JavaFX dengan betul.
Penyelesaian
Untuk menyelesaikan isu ini, anda perlu menambah modul JavaFX secara manual ke laluan modul projek anda dan tentukan modul yang anda mahu gunakan.
Tambah JavaFX SDK sebagai Perpustakaan:
Konfigurasikan Pilihan VM:
Dalam medan VM Options, tambahkan yang berikut:
Nyatakan Kebergantungan Modul:
Dalam fail pom.xml, tambahkan kebergantungan berikut:
<dependency> <groupId>org.openjfx</groupId> <artifactId>javafx-controls</artifactId> <version>11</version>
Nota Tambahan
Dengan mengikut langkah ini, anda sepatutnya dapat menyelesaikan IllegalAccessError apabila mencipta Label atau kawalan lain dalam JavaFX 11.
Atas ialah kandungan terperinci Mengapa saya mendapat IllegalAccessError apabila mencipta Label dalam JavaFX 11?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!