Я использую Ivy как часть моей системы непрерывной интеграции, но мне нужно переопределить местоположение по умолчанию, в котором находится область локального кэша Ivy.
Как переопределить местоположение кэша Ivy?
Ответ 1
Хотя ответ выше от скаффмана верен, я нашел, что это намного больше работы, чем я ожидал!
Когда я добавил файл ivysettings.xml в проект, мне тогда нужно было переопределить почти все, поскольку значения по умолчанию работали нормально до тех пор.
Итак, я узнал, как добавить новый каталог кеша в строку командной строки в моей NAnt script...
< exec program="java" commandline="... ... -jar ${ivy.jar} -cache ${project.cache} ... ... />
(Где ${ivy.jar}
- это местоположение моего .jar файла, а ${project.cache}
- новое местоположение, установленное ранее в script, где я хочу использовать область кеша.)
Это означает, что мне не нужен файл ivysettings.xml, и я могу вернуть все обратно к использованию распознавателей по умолчанию и т.д.
Ответ 2
Что-то вроде этого в ivysettings.xml
:
<ivysettings>
<caches defaultCacheDir="/path/to/my/cache/dir"/>
</ivysettings>
См. документацию на http://ant.apache.org/ivy/history/latest-milestone/settings/caches.html
Ответ 3
Я использую Jenkins как систему сборки CI и создаю $HOME/.ivy2/ivysettings.xml:
<ivysettings>
<properties environment="env" />
<caches defaultCacheDir="${env.WORKSPACE}/.ivy2/cache" />
</ivysettings>
Создайте двуязычный кеш плюща в каждом рабочем пространстве задания jenkins.