Как заставить Айви загружать Hibernate, но не эти два?
Айви делает это с помощью так называемых «конфигураций». Ваш ivy.xml
, представляющий Hibernate, должен будет предоставить различные конфигурации для представления различных вариантов использования для Hibernate. (Очевидно, что есть некоторое использование hibernate, которое требует jaas и jacc, но, очевидно, вы не используете этот случай.)
Здесь - документация по конфигурациям. Если вы хотите указать ivy.xml
, который вы используете для спящего режима, я могу предоставить указатели на создание конфигураций, которые будут удалять определенные библиотеки, которые вы хотите удалить.
Если бы я действительно нуждался в них и загрузил их банки от Sun, в какой папке на моей машине их искала бы Айви?
«Каталоги», которые ivy просматривает для файлов и артефактов ivy, определяются списком преобразователей, которые вы используете. Список распознавателей указан в файле настроек ivy (обычно с именем ivysettings.xml
.) Как правило, это не локальные каталоги, а удаленные URL-адреса. Есть; однако для этого будет работать тип распознавателя локальных файлов.
Если вы сделаете это, вам нужно будет предоставить как файлы плюща, так и артефакты (jars), каждый из которых должен иметь имена файлов, соответствующие шаблонам распознавателей. Подробности об этом в документации.
Вот пример распознавателя локальных файлов из файла настроек ivy:
<filesystem name="myfiles" checkconsistency="false" checksums="" transactional="false">
<ivy pattern="/data/repo/[organisation]/[module]-[revision].ivy.xml"/>
<artifact pattern="/data/repo/[organisation]/[module]-[revision].[ext]"/>
</filesystem>
Также обратите внимание, что вам нужно будет указывать в задачах ivy правильный распознаватель. Это можно сделать с помощью атрибута resolver в задачах ant или атрибута defaultResolver
элемента settings
в файле настроек ivy.
Здесь - документация по распознавателям.
РЕДАКТИРОВАТЬ: ОП нашел менее интенсивное решение для своей конкретной первоначальной проблемы. «Исключить» дочерний тег тега зависимости сделал работу за него:
<dependencies>
<dependency org="org.hibernate" name="hibernate-core" rev="3.3.1.GA" conf='..'>
<exclude name='jaas' />
<exclude name='jacc' />
</dependency>
</dependencies>