Custom Maven Archetype или альтернативы генерации проектов - PullRequest
7 голосов
/ 01 октября 2011

Мы хотели бы создать проекты из Maven Archetype, но мы находим это немного упрощенным. Мы хотели бы сделать следующее:

  1. Есть простая отправная точка. Не задавайте слишком много вопросов.
  2. Разрешить обновление проекта позже (или во время первоначальной генерации) с дополнительными функциями.
  3. Разрешить добавление / удаление / обновление функций проекта.
  4. Обновление pom.xml, файлов Spring xml, возможно других файлов XML и файлов свойств.
  5. создание заглушенных веб-сервисов из контрактов, включая модульные тесты.
  6. генерация проектов Eclipse / Intellij была бы хороша.
  7. Было бы неплохо создать несколько достаточно сложных поколений, таких как заполнение пространств имен / классов в Spring Interceptors. Особенно, если он может генерировать указанные значения.

Похоже, что архетипы Maven не поддерживают ничего, кроме выбора при первоначальном создании и добавления файлов позже. Я не вижу никакой поддержки для изменения существующих файлов? Мы можем генерировать заглушенные веб-сервисы через обычную сборку maven, но, похоже, не можем запускать произвольные плагины maven во время архетипа: generate?

Если кто-то знает ответы на любые из вышеперечисленных, мы хотели бы услышать это. Также, если у кого-то есть альтернативы для набора функций, который мы ищем, мы хотели бы узнать о них.

1 Ответ

0 голосов
/ 07 октября 2011

Мы сделали что-то подобное для нашего проекта.

Мы определили выделенный плагин, который сам будет вызывать плагин Archetype: generate.

Таким образом, мы можем положиться на Archetype: генерировать возможности (автоматический анализ и замена части сгенерированных классов ...).

Вы можете посмотреть этот проект на нашем SVN здесь: http://websvn.ow2.org/listing.php?repname=weblab&path=%2Ftrunk%2FWebLabTools%2FMavenPlugins%2F&#.

Примечание: код был написан стажером, будьте добры; -)

...