Я столкнулся с этим вопросом, когда читал документацию Ivy cachefileset , в которой говорится:
Пожалуйста, предпочтите использование получения +
стандартное создание пути муравья, которое делает
ваша сборка более независима от плюща
(как только артефакты правильно
извлечено, плющ не требуется
больше).
В документации к кэше Ivy также указано:
Если вы хотите сделать свою сборку более
независимо от плюща, вы могли бы
рассмотреть возможность использования задачи извлечения. однажды
артефакты правильно извлечены,
Вы можете использовать стандартное создание пути Ant
что делает плющ не нужно
больше.
Так что, казалось бы, лучше было бы изменить ответ Марка на что-то, что использует retrieve в сочетании с путями муравья. Что-то вроде следующего:
Ответ Марка (изменен)
<configurations>
<conf name="tasks" description="Ant tasks"/>
</configurations>
<dependencies>
<dependency org="ant-contrib" name="cpptasks" rev="1.0b5"
conf="tasks->default"/>
<dependency org="junit" name="junit" rev="3.8" conf="tasks->default"/>
..
В вашем файле build.xml вы можете создать путь из этой конфигурации
<ivy:retrieve conf="tasks"
pattern="${dir.where.you.want.taskdef.jars}/[artifact]-[revision].[ext] />
<path id="tasks.path">
<fileset dir="${dir.where.you.want.taskdef.jars}">
<include name="**/*.jar"/>
</fileset>
</path>
<taskdef name="task1" classname="??" classpathref="tasks.path"/>
<taskdef name="task2" classname="??" classpathref="tasks.path"/>
Это даже позволит вам переместить задачу извлечения в отдельный файл ant, который имеет дело с зависимостями. Таким образом, вам не нужно полагаться на ivy после того, как ваши зависимости извлечены в их каталоги.
Цель плюща состоит в том, чтобы вы использовали его, чтобы вытащить банки (разрешить и получить). Как только вы их установите, вы можете вернуться к использованию стандартного Ant.
<ч />
Примечание: я бы просто вытащил эти зависимости в каталог lib. Это упростит задачу извлечения:
<ivy:retrieve conf="tasks" />
Также обратите внимание: посетите раздел 'Path-like Structures' на этой странице, чтобы узнать больше о "создании стандартного пути муравья"