3

API (メソッド シグネチャ) がわずかに異なる 2 つのバージョンの JAR があります。1 つは新しいバージョンで、もう 1 つは古いバージョンです。

必要に応じて古い jar にフォールバックできる、どちらかを使用できるアプリケーションを作成したいと思います (ただし、一度に 1 つだけです)。

この目的のために、関連するクラスの 2 つのバージョンがあります。1 つは古い API を使用し、もう 1 つは新しい API を使用します。環境変数を使用して、クラスパスにある JAR を指示できます。アプリケーションは同じ変数を使用して、使用するクラスを決定できます。

私の問題は、異なる JAR に対してビルドされている場合、同じプロジェクトで両方のクラスを簡単にビルドするにはどうすればよいかということです。簡単な解決策はありますか?

4

1 に答える 1

0

クラスパスに jar を表示しないでください。jar ごとに 2 つの異なる URLClassLoader を作成し、クラスを手動でロードします classLoader1.loadClass または classLoader2.loadClass

于 2013-10-07T10:44:24.483 に答える