ホームページ > Java > &#&チュートリアル > JDK 10 に移行した後、XML クラスで Eclipse ビルド パス エラーが発生するのはなぜですか?

JDK 10 に移行した後、XML クラスで Eclipse ビルド パス エラーが発生するのはなぜですか?

Barbara Streisand
リリース: 2024-11-29 11:22:12
オリジナル
981 人が閲覧しました

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

JDK 10 への移行後の XML クラスに関する Eclipse ビルド パスの問題

Maven プロジェクトを Java 8 から JDK 10 に移行する場合、Eclipse ユーザーjavax.xml.xpath などのクラスに関連するビルド エラーが発生する可能性があります。 org.w3c.dom.Document、および org.xml.sax.SAXException。この問題は、特にプロジェクトの Java ビルド パスを JDK 10 に切り替えるときに発生します。

根本原因

この問題は、プロジェクトにモジュール情報が欠如しているという事実から発生します。 java ファイル。この設定により、コードは「名前のないモジュール」でコンパイルされます。名前のないモジュールは、すべての監視可能なモジュールからパッケージをロードできます。この場合、Java ランタイム環境の java.xml や Maven 依存関係の xml-apis などのパッケージが含まれます。

ルール違反

この状況は、修飾された言語に独自の可視性を要求する Java 言語仕様 (JLS) §7.4.3 に違反します。タイプ名。この場合、java.xml と xml-apis のパッケージは、java.xml.xpath と関連クラスの競合する定義を提供します。

ソリューション

1 。 module-info.java ファイルを追加します

module-info.java ファイルを実装し、必要なモジュールを指定します。java.xml が必要です。または、可視性の問題を解決するには xml.apis; が必要です。

2.監視可能なモジュールから java.xml を除外する

監視可能なモジュールのリストから java.xml を除外することで、衝突を回避します。これは、Eclipse 内の「モジュール性の詳細」ダイアログを通じて実行できます。

意味と結論

javac は誤ったコードを拒否しない可能性がありますが、 JLS。 Eclipse のエラー メッセージングは​​、根本的な問題をより具体的に示すように改良されました。開発者は、このようなビルド エラーを防ぐために、Java のモジュール性ガイドラインを遵守し、モジュールの独自の可視性を確保することをお勧めします。

以上がJDK 10 に移行した後、XML クラスで Eclipse ビルド パス エラーが発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート