Rumah Java javaTutorial Mengapa Eclipse Tidak Dapat Menemui Kelas XML Saya Selepas Beralih kepada JDK 10?

Mengapa Eclipse Tidak Dapat Menemui Kelas XML Saya Selepas Beralih kepada JDK 10?

Nov 28, 2024 am 11:13 AM

Why Can't Eclipse Find My XML Classes After Switching to JDK 10?

Eclipse Encounters Isu Mencari Kelas XML Post JDK 10 Build Path Switch

Semasa mengerjakan projek Maven dalam Eclipse, pengguna menghadapi kesukaran selepas mengubah suai Laluan Binaan Java projek kepada JDK 10. Khususnya, Eclipse tidak dapat mencari kelas berkaitan XML, seperti javax.xml.xpath.XPath, org.w3c.dom.Document atau org.xml.sax.SAXException. Menariknya, isu ini hanya menjejaskan kelas XML daripada kebergantungan Maven xml-apis-1.4.01.

Walaupun ketidakupayaan untuk mengakses kelas ini semasa proses binaan Eclipse, binaan Maven dilaksanakan tanpa ralat. Selain itu, menggunakan Ctrl-LeftClick pada salah satu kelas yang dikatakan tiada membenarkan pengguna mencari dan membukanya dalam editor Eclipse. Oleh itu, nampaknya masalah itu diasingkan kepada binaan Eclipse.

Untuk membetulkan keadaan, pengguna mencuba pelbagai penyelesaian, termasuk:

  • Membersihkan projek
  • Menggunakan versi Eclipse yang berbeza (Oksigen dan Foton)
  • Menggunakan kedua-dua JDK 8 dan JDK 10 dengan Eclipse
  • Melaraskan tahap Pematuhan Pengkompil projek (yang kekal bermasalah)

Tiada satu pun daripada langkah ini menyelesaikan isu.

Pemahaman Punca Punca dan Penemuan Penyelesaian

Isu asas berpunca daripada andaian bahawa projek yang berhijrah daripada Java 1.8 tidak mempunyai fail module-info.java, yang mengakibatkan penyusunan dalam "modul yang tidak dinamakan." Dalam modul ini, kod menilai modul yang boleh diperhatikan dan tidak dinamakan, termasuk "java.xml" daripada Pustaka Sistem JRE. Yang terakhir ini menyediakan akses kepada pakej seperti java.xml.xpath.

Seiring dengan ini, projek ini menggunakan xml-apis.java sebagai kebergantungan, yang menawarkan set alternatif pakej dengan nama yang sama (mis., java. xml.xpath). Memandangkan kedua-dua set pakej berada dalam modul yang tidak dinamakan, ia bercanggah, melanggar keperluan "keterlihatan unik" dalam Java 1.8.

Untuk menyelesaikan konflik, dua penyelesaian tersedia:

  1. Tambahkan fail module-info.java pada projek, membenarkan kawalan ke atas modul mana (sama ada java.xml atau xml.apis) itu menggunakan.
  2. Kecualikan java.xml daripada modul yang boleh diperhatikan. Dalam Eclipse, ini boleh dicapai melalui dialog "Butiran Modulariti", yang ditemui di bawah tab "Kandungan". Dengan mengalihkan java.xml daripada "Modul yang disertakan secara eksplisit" kepada "Modul yang tersedia", konflik dapat dielakkan.

Atas ialah kandungan terperinci Mengapa Eclipse Tidak Dapat Menemui Kelas XML Saya Selepas Beralih kepada JDK 10?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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

Tag artikel panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Rangka Kerja 4 JavaScript teratas pada tahun 2025: React, Angular, Vue, Svelte Rangka Kerja 4 JavaScript teratas pada tahun 2025: React, Angular, Vue, Svelte Mar 07, 2025 pm 06:09 PM

Rangka Kerja 4 JavaScript teratas pada tahun 2025: React, Angular, Vue, Svelte

Bagaimanakah mekanisme kelas muatan Java berfungsi, termasuk kelas yang berbeza dan model delegasi mereka? Bagaimanakah mekanisme kelas muatan Java berfungsi, termasuk kelas yang berbeza dan model delegasi mereka? Mar 17, 2025 pm 05:35 PM

Bagaimanakah mekanisme kelas muatan Java berfungsi, termasuk kelas yang berbeza dan model delegasi mereka?

Bagaimanakah saya menggunakan Maven atau Gradle untuk Pengurusan Projek Java Lanjutan, Membina Automasi, dan Resolusi Ketergantungan? Bagaimanakah saya menggunakan Maven atau Gradle untuk Pengurusan Projek Java Lanjutan, Membina Automasi, dan Resolusi Ketergantungan? Mar 17, 2025 pm 05:46 PM

Bagaimanakah saya menggunakan Maven atau Gradle untuk Pengurusan Projek Java Lanjutan, Membina Automasi, dan Resolusi Ketergantungan?

Node.js 20: Peningkatan Prestasi Utama dan Ciri -ciri Baru Node.js 20: Peningkatan Prestasi Utama dan Ciri -ciri Baru Mar 07, 2025 pm 06:12 PM

Node.js 20: Peningkatan Prestasi Utama dan Ciri -ciri Baru

Iceberg: Masa Depan Jadual Data Tasik Iceberg: Masa Depan Jadual Data Tasik Mar 07, 2025 pm 06:31 PM

Iceberg: Masa Depan Jadual Data Tasik

Bagaimanakah saya boleh menggunakan JPA (Java Constence API) untuk pemetaan objek-objek dengan ciri-ciri canggih seperti caching dan malas malas? Bagaimanakah saya boleh menggunakan JPA (Java Constence API) untuk pemetaan objek-objek dengan ciri-ciri canggih seperti caching dan malas malas? Mar 17, 2025 pm 05:43 PM

Bagaimanakah saya boleh menggunakan JPA (Java Constence API) untuk pemetaan objek-objek dengan ciri-ciri canggih seperti caching dan malas malas?

Bagaimanakah saya melaksanakan caching pelbagai peringkat dalam aplikasi java menggunakan perpustakaan seperti kafein atau cache jambu? Bagaimanakah saya melaksanakan caching pelbagai peringkat dalam aplikasi java menggunakan perpustakaan seperti kafein atau cache jambu? Mar 17, 2025 pm 05:44 PM

Bagaimanakah saya melaksanakan caching pelbagai peringkat dalam aplikasi java menggunakan perpustakaan seperti kafein atau cache jambu?

Spring Boot Snakeyaml 2.0 CVE-2022-1471 Isu Tetap Spring Boot Snakeyaml 2.0 CVE-2022-1471 Isu Tetap Mar 07, 2025 pm 05:52 PM

Spring Boot Snakeyaml 2.0 CVE-2022-1471 Isu Tetap

See all articles