Обмен конфигурациями плюща - PullRequest
3 голосов
/ 22 июля 2009

Я поддерживаю несколько проектов, поддерживаемых конфигурациями ivy. Многие конфигурации перекрываются, например:

  • общие конфигурации сборки (pmd, findbugs);
  • группы зависимостей (весна);

Есть ли способ импортировать эти зависимости, ссылаясь на общую конфигурацию?


N.B. Пожалуйста, не предлагайте Maven, насколько я знаю об этом, но (пока) это не вариант для этих конкретных проектов.

Ответы [ 2 ]

2 голосов
/ 22 июля 2009

Включает ли то, что вам нужно, или проблема более сложная?

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

<ivy-module version="1.0">
  <info organisation="myorg"
         module="mymodule"/>
  <configurations>
    <include file="path/to/included-configurations.xml"/>
    <conf name="conf3"/>
  </configurations>
  <dependencies>
    <dependency name="mymodule1" rev="1.0"/>
    <dependency name="mymodule2" rev="2.0" conf="conf2,conf3->*"/>
  </dependencies>
</ivy-module>

с включенным-configs.xml вот так:

<configurations defaultconfmapping="*->@">
  <conf name="conf1" visibility="public"/>
  <conf name="conf2" visibility="private"/>
</configurations>

Обновление: для зависимостей я не уверен, что это возможно. Я нашел обсуждение об импорте зависимостей, которое указывает на то, что это сделано с целью избежать циклических зависимостей.

Возможно, вы могли бы написать скрипт для обработки ссылочного файла плюща и включения зависимостей в ваш проект?

0 голосов
/ 11 августа 2009

Читая ваш вопрос, я решил бы проблему, используя svn:externals (если вы используете Subversion), а не Ivy.

Вы помещаете все свои общие конфигурации в проект config Subversion и просто используете svn:externals для импорта его в другие проекты.

Как пример, вы можете взглянуть на мой проект конфигурации в Google Code:

...