2010-05-13 7 views
0

Я использую Ivy для решения моих зависимостей. У нас есть большое пространство для совместной работы, где все библиотеки, которые мы используем, живут и извлекаются по мере необходимости.ivy разрешить динамическую зависимость

Очень часто нам нужно добавить некоторые дополнительные файлы в существующую версию библиотеки. Например, мы недавно начали использовать компоненты диаграмм в библиотеке пользовательского интерфейса. Мы ранее не нуждались в них, поэтому я взял соответствующие библиотеки DLL и скопировал их в пространство общего доступа с существующими DLL-библиотеками.

Однако бегущий плющ не выбирает эти дополнения по умолчанию, предположительно потому, что они локально кэшируются на моей машине, а плющ только проверяет версию, чтобы увидеть, есть ли у нее версия x.y.z библиотеки a. Он не проверяет, изменилась ли версия x.y.z библиотеки a в репозитории плюща.

Есть ли способ получить плющ, чтобы проверить репозиторий на структурные изменения в библиотеке, а не просто проверять локальный кеш?

Я пробовал использовать <ivy:resolve refresh="true"/>, но это, казалось, ничего не делало.

Спасибо.

+0

Обычно я добавляю цель «чистой цели» в проект муравья. Это позволит очистить локальный кэш плюща, вызвав задачу «плющ: cleancache». Позволяет мне гарантировать, что все правильно загружается из репозитория. –

ответ

3

Если вы изменили содержание зависимости, не измените ли его номер версии? Если зависимость все еще в движении, возможно, вам стоит заглянуть в snapshots.

+0

Вообще-то я согласен, но поскольку это внешняя библиотека, версия на самом деле не меняется, мы просто хотим использовать больше компонентов библиотек (больше DLL). Мы не хотим делать все это, потому что это значительно увеличит размер окончательной сборки. –

+0

Я вижу. То, что мы делали в подобных ситуациях, - это сделать отдельные артефакты каждой части внешней библиотеки. Затем вы можете зависеть только от частей, которые вы хотите. – jackrabbit

+0

@MikeQ: точка дополнительных артефактов заключается в том, что вы также можете добавлять конфигурации, содержащие только некоторые из артефактов. Тогда ваша сборка будет зависеть только от некоторых конфигураций. – jackrabbit

Смежные вопросы