ivy и ivyde и преобразователи файловой системы

У меня проблема с тем, чтобы сборки ant/ivy и сборки eclipse/ivyde хорошо работали друг с другом.

Вот моя настройка, где «git_root» отличается для каждого разработчика:

/{git_root} |
             -/projectA
             -/B  |
                   - projectB1
                   - projectB2
             -ivy_build |
                        - ivy_settings.xml
                        - local_repository

мой ivy_settings.xml содержит преобразователь файловой системы, который, конечно же, должен использовать абсолютные пути.

e.g.:

<filesystem name="local">
  <ivy pattern="${repository.dir}/[module]/ivy.xml" />
  <artifact pattern="${repository.dir}/[module]/[artifact].[ext]" />
</filesystem>

Итак, как мне определить {repository.dir} таким образом, чтобы и муравей, и ivyde/eclipse были счастливы?


person ticktock    schedule 01.05.2013    source источник


Ответы (2)


Обычно я использую свойство ivy.settings.dir, которое разрешается в каталог, локальный для файла настроек ivy:

<filesystem name="myrepos">
    <artifact pattern="${ivy.settings.dir}/local_repository/[organisation]/[artifact]-[revision].[ext]" />
</filesystem>
person Mark O'Connor    schedule 01.05.2013

Обычно я с этим сталкиваюсь, используя файл свойств, который может редактировать каждый разработчик. В этом файле свойств я ожидаю, что свойство repository.dir будет установлено.

Для этого я обычно проверяю в репозитории svn/git файл ivysettings.local-sample.properties. Этот файл будет содержать ожидаемые свойства со значениями, которые необходимо заполнить.

Каждый разработчик извлечет образец файла и скопирует его на ivysettings.local.properties. Затем они редактируют файл, чтобы установить свои пути в своей файловой системе.

А в ivysettings.xml просто добавьте:

<properties file="ivysettings.local.properties" />
person Nicolas Lalevée    schedule 01.05.2013