0

複数のプロジェクトを含む大きなプロジェクトをソース管理からダウンロードしました。これまで問題なくダウンロードできました。通常、クラスの依存関係は既に定義されており、問題なくパッケージを Eclipse にインポートできます。

今回はプロジェクト間のコミュニケーションに苦労しているようです。私のエラーはすべて、抽象クラスまたはインターフェースを拡張/実装するクラスが原因のようです。あるプロジェクトのクラス A が別のプロジェクトの別のクラスまたはインターフェイスを拡張または実装する場合、クラス A が継承されたメソッドを呼び出しまたはオーバーライドしようとすると、例外が発生します。ビルドパスを確認しましたが、正しいようです。抽象クラスとインターフェイスをインポートできますが、それらのメソッドを使用することはできません。この問題は、実装されているインターフェイスまたはクラスが、それを実装するクラスとは異なるパッケージに存在する場合にのみ発生します。

パッケージの更新、クリーニングと再構築、ant スクリプトからの再構築を試みましたが、これらの変更はどれも役に立たないようです。誰が何が間違っているのか提案できますか?

ちなみに、ソース管理からすべてをチェックアウトしたときに、誤ってチェックインされたEclipseメタデータの一部を取得した可能性があると思います。これは、日食が一貫性のない状態になった理由を説明している可能性があります。

ありがとう!

4

1 に答える 1

1

正常にコンパイルされているが実行時に取得する場合ClassNotFoundExceptionsは、実行構成の [クラスパス] タブに表示されているものがプロジェクトのビルド パスと一致していることを確認する必要があります。

これにより、ビルドに使用しているのと同じクラスパスで実行されていることが保証されます。

于 2011-05-11T12:19:16.533 に答える