1

同じ名前の2つのjarファイルがあり、1つをglassfish/libフォルダーに入れ、もう1つをglassfish/domains/domain/lib(またはglassfish/domains/domain/applibs)に入れたとしましょう。

これらの 2 つの jar ファイルは、同じクラス名 (A とします) とメソッド名 (method1 とします) を持ちますが、method1 の実装は異なります。

Glassfish サーバーを起動し、アプリケーションで A.method1() を呼び出すと、どのメソッドが実行されますか?

テストを行ったところ、glassfish/lib のメソッドが実行されたようです。他のメソッドを実行する方法はありますか?

4

1 に答える 1

1

1つの実装をTomcat\libディレクトリに置き、もう1つの実装をapplication \ libディレクトリに置いたとき、tomcatでも同じことをしました。

application \ libに実装が含まれている場合、server \ libディレクトリよりも優先されますが、application \ libがない場合は、server\libを使用してアプリケーションを実行します。

したがって、あなたの場合、つまりドメインでは、両方の実装が存在する場合、domain \ lib A.method1()が実行されているように見えます。

于 2012-05-03T18:37:41.430 に答える