2

Java アプリケーションを Netbeans プラットフォームに移行しています。関数の 1 つは、Xerces ライブラリの SAXBuilder を使用して XML を解析します。

SAXBuilder の宣言

SAXBuilder builder = new SAXBuilder("org.apache.xerces.parsers.SAXParser", true);

この行により、JDOM 例外が発生します (指定されたパーサーをロードできなかったためだと思います)。

builder.build(xmlFile);

エラーメッセージは次のとおりです。

org.apache.xerces.parsers.SAXParser をロードできませんでした: SAX2 ドライバー クラス org.apache.xerces.parsers.SAXParser が見つかりません: ModuleCL@16c14e7[org の 1 つからクラス org.apache.xerces.parsers.SAXParser を任意にロードしません.netbeans.libs.xerces] および ModuleCL@17e5fde[czsaw.project] SystemClassLoader[406 モジュール] から開始します。http://wiki.netbeans.org/DevFaqModuleCCEを参照

これを修正するにはどうすればよいですか?

4

2 に答える 2

1

プロジェクト ライブラリにロードしたライブラリが、SAXBuilder の正しいパッケージであることを確認してください。クラスのあいまいさがあるようで、どれをロードすればよいかわかりません。

于 2012-07-24T20:44:28.523 に答える
0

Netbeans の FAQ を確認してください。

彼らは、あいまいさを引き起こすモジュールが複数ある場合にクラスローダーが失敗するように設計しました。

http://wiki.netbeans.org/DevFaqModuleCCE

記事が示唆するように、使用するクラスを定義する必要があるモジュールにこのコードを配置します。

Thread.currentThread().setContextClassLoader( YourClass .class.getClassLoader());

于 2014-09-09T19:46:43.217 に答える