Apache Ivy & Файл настроек - PullRequest
       6

Apache Ivy & Файл настроек

1 голос
/ 08 сентября 2011

Я пишу свою первую конфигурацию Ivy для нового Java-проекта и пытаюсь подключить мой файл ivy-settings.xml к моему buildscript.

Я выполнил все уроки и правильно добавилxmlns:ivy="antlib:org.apache.ivy.ant" пространство имен для моего файла build.xml.До сих пор я пытался запустить свои цели разрешения и очистки, которые запускают ivy:resolve и ivy:cleancache соответственно, и все, кажется, работает (Ant может найти Ivy).

Однако ... когда я запускаюivy: решите, по умолчанию он идет прямо к публичному репо.Поскольку мои средства распознавания написаны для просмотра в моем корне SVN, я должен сделать вывод, что Ivy не видит мой файл ivy-settings.xml и по умолчанию собирается в публичные репозитории.

Я специально держу свой плющ-settings.xml файл как отдельный проект в управлении исходным кодом, потому что он будет использоваться всеми моими проектами.

Итак, мой вопрос:

Как мне настроить Ant buildscipt для просмотрадля извлеченной версии ivy-settings.xml где-то еще в моей файловой системе, а не просто сидеть там локально в том же каталоге, что и build.xml?

1 Ответ

1 голос
/ 08 сентября 2011

Измените имя файла настроек на:

ivysettings.xml

Если вы хотите изменить это имя и расположение по умолчанию (тот же каталог, что и у файла сборки), используйте задачу "settings"

Обновление

Таким образом, я проверяю, что файл настроек загружается перед вызовом задач ivy resol из cleancache .Создайте цель с именем init , которая объявлена ​​как зависимость

<target name="init">
    <ivy:settings file="../../ivysettings.xml"/>
</target>

<target name="resolve" depends="init">
    <ivy:resolve/>
</target>

<target name="clean" description="Cleanup build directory">
    <delete dir="${build.dir}"/>
</target>

<target name="clean-all" depends="init,clean" description="Clean and purge caches">
    <!-- Purge the ivy cache -->
    <ivy:cleancache/>
</target>
...