Cara Menyelesaikan InaccessibleObjectException pada Java 9
Apabila menggunakan Java 9, pembangun mungkin menghadapi InaccessibleObjectException. Ia timbul disebabkan oleh pelaksanaan pengkapsulan yang kuat oleh Sistem Modul Platform Java.
Pecahan Mesej Pengecualian:
Unable to make {member} accessible: module {A} does not "opens {package}" to {B}
Senario Utama Menyebabkan Pengecualian:
1. Panggilan Reflektif Ke JDK
2. Refleksi Terhadap Kod Permohonan
1. Penyelesaian untuk Panggilan Reflektif Ke JDK:
Gunakan bendera baris arahan berikut untuk membuka pakej yang ditentukan untuk refleksi:
java --add-opens java.base/java.lang=ALL-UNNAMED
Ganti ALL-UNNAMED dengan nama yang dinamakan modul jika berkenaan.
2. Penyelesaian untuk Refleksi Terhadap Kod Aplikasi:
Edit modul {A} untuk membuka pakej dalaman menggunakan salah satu pilihan berikut dalam deskriptor modulnya:
Atas ialah kandungan terperinci Bagaimana untuk Membetulkan InaccessibleObjectException Java 9: JDK dan Penyelesaian Kod Aplikasi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!