Как мне сказать ivy4r оставаться в автономном режиме? - PullRequest
2 голосов
/ 07 августа 2011

Мы недавно переключились с Ant на Buildr для создания наших проектов. Мы используем Ivy для управления зависимостями, используя расширение ivy4r Buildr. У нас есть локальный репозиторий в офисе, который используется в качестве кеша для публичных артефактов и в котором мы также публикуем наши собственные артефакты.

Теперь о проблеме: я хотел бы иметь возможность строить свой проект, когда у меня нет доступа к офисному репозиторию. У Buildr есть флаг, позволяющий ему работать в автономном режиме (-o), но ivy4r, похоже, не принимает это во внимание. Есть ли способ заставить Айви не пытаться загружать артефакты? У меня уже есть все они в кеше на моей машине.

1 Ответ

8 голосов
/ 08 августа 2011

Установка времени ожидания кэша на вечное

Вы можете установить свойство cache $ {ivy.cache.ttl.default} на вечное, это установит TTL : так что хранилище не будет проверяться на наличие новых ревизий.

Этого можно добиться, вызвав ant со следующим параметром:

ant -Divy.cache.ttl.default=eternal build

Это из документации :

Определяет правило TTL (время жизни) для разрешенного кэширования редакции.Когда Ivy разрешает ограничение динамической версии (например, latest.integration или диапазон версий), он может сохранить результат разрешения (например, latest.integration = 1.5.1) в течение заданного времени, который называется TTL.Это означает, что Ivy будет повторно использовать этот результат разрешения динамической ревизии, не обращаясь к репозиториям в течение времени TTL, если только не выполняется разрешение в режиме обновления.

...

Продолжительность TTL также может бытьустановлен на «вечный», и в этом случае после разрешения всегда используется ревизия, кроме случаев, когда она разрешается в режиме обновления.

Другие ссылки:

Настройка UseCacheOnly для задачи разрешения

Задача разрешения имеет атрибут useCacheOnly, который можно использовать для

заставляет распознаватели использовать только свои кэши, а не их фактическое содержимое

Пример:

<ivy:resolve file="path/to/ivy.xml" useCacheOnly="true/>
...