私の仕事では、一部の Java プロジェクトで AspectJ を使用しています。これをantビルドで動作させるために、ant/lib/内にaspectjtools.jarを配置しています。
私は現在、特定の Java プロジェクトに取り組んでおり、aspectJ の新しいバージョンを使用する必要があります。プロジェクトを使用するすべての人に、aspectjtools.jar のローカル コピーを更新してもらう必要はありません。代わりに、新しいspectjtools.jarをプロジェクトのlibディレクトリに追加し、次の行をbuild.xmlに追加してみました。
<taskdef
resource="org/aspectj/tools/ant/taskdefs/aspectjTaskdefs.properties"
classpath="./lib/aspectjtools.jar" />
ただし、ANT クラスローダーは、タスク定義クラスパスで指定した jar に優先して ant/lib/ から jar をロードするため、これは期待どおりに機能しません。
代わりに、プロジェクトにチェックインされた jar を選択するように ant に強制する方法はありますか?