2 つの異なる jar を持つプロジェクトがあり、両方に同じクラスがいくつか含まれています。私が必要とするのは、Jar「B」の前にJar「A」のクラスを使用することです。通常の Java コンパイル (および Ant を使用) では、クラスパス自体の順序を指定できました。このようにして、Jar "A" のクラスが Jar "B" のクラスの前に使用されることを保証できます。
Ivyでこれを行う方法はありますか?
これを行う唯一の方法は、 my に 2 つの個別の構成を作成することivy.xml
です。
<dependency org="com.vegibank" name="a.jar"
rev="1.0" conf="foo->default"/>
<dependency org="com.vegibank" name="b.jar"
rev="1.0" conf="compile->default"/>
次に、2 つの個別のパスクラス参照を作成します。
<ivy:cachepath pathid="compile.foo.classpath"
conf="foo"/>
<ivy:cachepath pathid="compile.normal.classpath"
conf="compile"/>
次に<javac/>
、パスを指定できます。
<javac ...>
<classpath refid="compile.foo.classpath"/>
<classpath refid="compile.normal.classpath"/>
</javac>
ただし、Ivy が解決を行っているときに、jar がクラスパスにロードされる方法を保証する方法が必要であると思います。
これを行う方法はありますか?