重複クラスの場合は 「クラス」のものが使用されますか? クラスまたはジャー、勝者は?
は、クラスAが直接WEB-INF /クラス
と
WEB-INF/libに内のjarの一部で利用できるようになり、Webアプリケーションで考えてみましょう
クラス内のクラスが常に勝つのでしょうか?
重複クラスの場合は 「クラス」のものが使用されますか? クラスまたはジャー、勝者は?
は、クラスAが直接WEB-INF /クラス
と
WEB-INF/libに内のjarの一部で利用できるようになり、Webアプリケーションで考えてみましょう
クラス内のクラスが常に勝つのでしょうか?
これはクラスパスに依存します。最初に来るクラスパスエントリは最初に勝ちます。また、複数のクラスローダーがある場合、そのクラスをロードしたクラスローダーが最初に試行されます。クラスがjarファイルに含まれているかどうかには依存しません。文書番号here。
一般的に、同じ名前の複数のクラスが災害の真のレシピであるため、これを行わないでください。
**同じ名前の複数のクラスは、災害の本当のレシピです**確かに、あなたは瓶の建物を制御していないときに複雑なWebアプリケーション(100+ jars)で他に何ができるでしょうか? –
少なくとも、異なるアプリケーションサーバーとサーブレットコンテナでの私の経験からは、「はい」と言っていましたが、これが定義であるのか、単に「一般的な使用法」であるのかはわかりません。しかし、興味深い質問。 –
明らかにそうです。以下のリンクが役に立つかもしれません:http://stackoverflow.com/questions/4739302/web-info-classes-vs-web-inf-lib –
私が知る限り、これは標準では指定されていません。異なるアプリケーションサーバーの動作は大きく異なります。 weblogicとjbossは、まずアプリケーションサーバーによって提供されたjarファイルを選択します。 – opi