ライブラリのアクセス制限について: ケーススタディ
Java コードを使用する場合、制限により特定のクラスへのアクセス制限が発生する場合があります。特定のライブラリ (JAR ファイル) によって強制されます。このようなシナリオの 1 つは、IBM の WSDL2Java ツールで作成された Java 1.4 コードを Java 5 を使用してコンパイルしようとしたときに発生します。
エラーが発生しました:
コンパイルを試行中に、 Eclipse の次のエラー:
Access restriction: The type QName is not accessible due to restriction on required library C:\Program Files\Java\jdk1.5.0_16\jre\lib\rt.jar
このエラーは、QName クラスが必要な rt.jar ライブラリの制約により、javax.xml.namespace パッケージのファイルにアクセスできません。
考えられる解決策:
1.スタブの再作成:
考えられる解決策の 1 つは、WSDL2Java を使用してスタブを再作成することです。これにより、スタブが Java 5 環境専用に生成されるようになり、互換性の問題が排除されます。
2.ビルド パス設定の変更:
別の解決策には、プロジェクト プロパティでビルド パス設定を更新することが含まれます:
ソリューションの背後にある理由:
以上がIBM WSDL2Java で生成されたコードをコンパイルするときに Java 5 の QName クラスにアクセスできないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。