Я считаю, что приемлемый способ сделать это - вручную настроить ваш путь к классам в файле сборки, а не включать его неявным образом через глобальный каталог ant lib.то есть
<path id="master-classpath">
<fileset dir="${lib}" />
<fileset file="${findbugs-base}/lib/annotations.jar" />
<pathelement location="${build-classes}" />
</path>
Вы можете использовать этот элемент пути в любой задаче, которая может принимать аргументы classpath, такие как javac
<javac
destdir="${out}"
source="1.5"
target="1.5"
debug="true">
<src path="${src}" />
<classpath refid="master-classpath" />
</javac>
Таким образом, глобальная настройка муравья независимость, и вы можете указать любые файлы, которые вам могут понадобиться для любой сборки, настолько конкретно, насколько вам нужно (вплоть до данного вызова или цели).
Очевидно, что все это должно выполняться в сборкефайл, который вы вызываете из файла сборки клиента.Таким образом, когда вы обращаетесь к своему, путь к классу будет настроен именно так, как вы хотите.
Еще одна гораздо менее идиоматическая возможность - буквально раскошелиться с Exec Task и вызыватьмуравей таким образом.Очевидно, что с предоставлением задачи Ant разработчики ant не рекомендуют вам этого делать.Тем не менее, это вариант.