4

Javaが仕様の実装をどのように認識しているかわかりません..

たとえば、JSF を使用した Spring アプリがあります。Mojarra jar をクラスパスに配置すると、アプリは動作しますが、クラスパスに追加する以外は何もしていません。すべて構成なしです。

Mojarra jar を取り出すと、アプリが動作しません。

でも、Mojarra と MyFaces を変更せずに区別するにはどうすればよいでしょうか?

jar を取り出した場合に動作しない理由ではなく、Java が実装を見つける方法を知りたいだけです ;)

4

3 に答える 3

0

JSF の MyFaces と Mojarra の実装を見つけました。どちらも同じパッケージ構造を持っていることに気付きました。つまり、すべてが JSF 仕様に準拠していることを意味します。言い換えれば、どの実装 jar がクラスパス クラスパス ローダーに与えられるかは、それを処理します。

JVMのJava Class Loaderメカニズムに関するすべてです。Java Class Loaders で詳細な議論を見つけることができます

これは、両方の JSF 実装パッケージ構造の図です。

ここに画像の説明を入力

于 2013-04-29T21:14:11.870 に答える