Web アプリケーションに単一の .war ファイルがあります。問題の根本は、(環境が異なる) すべての顧客に対して 1 つの .war ファイルを保持したいということです。このために、さまざまなバージョンのライブラリを .war に保持し、展開時に使用するライブラリを決定する必要があります。
例えば:
最初の顧客は oracle 10 を使用し、2 番目の顧客は oracle 11 を使用しています。戦争で両方の ojdbc.jar ファイルを保持し、プロパティ ファイルのパラメータに従ってどちらを使用するかを選択します。
この問題を解決する 1 つの解決策は、無駄なファイルをロードしない独自の ClassLoader を作成することです (ここに示すように: https://serverfault.com/questions/317901/tomcat-possible-to-exclude-jars-during-app-deployment)。
問題は、ClassLoader クラスが「tomcat\lib」ディレクトリにある必要があることです。これにより、アプリケーションのインストールがより複雑になります。
たぶん、この問題を解決する別の方法がありますか?リフレクションなどを使用して、アプリケーション内でプログラムで行うのは素晴らしいことです。
手伝ってくれてありがとう!