Heim > Java > javaLernprogramm > Warum erhalte ich nach der Migration auf JDK 10 Eclipse-Build-Path-Fehler mit XML-Klassen?

Warum erhalte ich nach der Migration auf JDK 10 Eclipse-Build-Path-Fehler mit XML-Klassen?

Barbara Streisand
Freigeben: 2024-11-29 11:22:12
Original
915 Leute haben es durchsucht

Why Am I Getting Eclipse Build Path Errors with XML Classes After Migrating to JDK 10?

Eclipse Build Path-Problem mit XML-Klassen nach der Migration auf JDK 10

Bei der Migration eines Maven-Projekts von Java 8 auf JDK 10, Eclipse-Benutzer Möglicherweise tritt ein Build-Fehler bei Klassen wie javax.xml.xpath, org.w3c.dom.Document und auf org.xml.sax.SAXException. Dieses Problem tritt insbesondere auf, wenn der Java Build Path des Projekts auf JDK 10 umgestellt wird.

Ursache

Das Problem ergibt sich aus der Tatsache, dass dem Projekt Modulinformationen fehlen. Java-Datei. Dieses Setup führt dazu, dass der Code im „unbenannten Modul“ kompiliert wird. Das unbenannte Modul kann Pakete von allen beobachtbaren Modulen laden und umfasst in diesem Fall Pakete wie java.xml aus der Java Runtime Environment und xml-apis aus der Maven-Abhängigkeit.

Regelverletzung

Diese Situation verstößt gegen die Java Language Specification (JLS) §7.4.3, die eine eindeutige Sichtbarkeit für qualifizierte Typnamen erfordert. In diesem Fall stellen die Pakete von java.xml und xml-apis widersprüchliche Definitionen für java.xml.xpath und verwandte Klassen bereit.

Lösungen

1 . Fügen Sie eine module-info.java-Datei hinzu

Implementieren Sie eine module-info.java-Datei und geben Sie die erforderlichen Module an, entweder erfordert java.xml; oder erfordert xml.apis;, um das Sichtbarkeitsproblem zu beheben.

2. Schließen Sie java.xml von den beobachtbaren Modulen aus

Vermeiden Sie Konflikte, indem Sie java.xml von der Liste der beobachtbaren Module ausschließen. Dies kann über das Dialogfeld „Modularitätsdetails“ in Eclipse erreicht werden.

Implikationen und Schlussfolgerung

Während Javac den fehlerhaften Code möglicherweise nicht ablehnt, ist er laut der JLS. Die Eclipse-Fehlermeldung wurde seitdem verbessert, um einen genaueren Hinweis auf das zugrunde liegende Problem zu geben. Entwicklern wird empfohlen, sich an die Modularitätsrichtlinien von Java zu halten und eine eindeutige Sichtbarkeit ihrer Module sicherzustellen, um solche Build-Fehler zu verhindern.

Das obige ist der detaillierte Inhalt vonWarum erhalte ich nach der Migration auf JDK 10 Eclipse-Build-Path-Fehler mit XML-Klassen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage