2010-06-22 7 views
8

Сегодня я смотрел проекты Maven Multi-Module и EAR, и они кажутся очень похожими, поскольку оба, похоже, определяют сборку коллекции других проектов - похоже, что проект EAR должен быть просто альтернативной упаковкой для многомодульного проекта.Действительно ли Maven Multi-Module и EAR хорошо сочетаются?

Я что-то не понял? Или эти проекты работают вместе?


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

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

+0

Я задал аналогичный вопрос (http://stackoverflow.com/questions/2821077/maven-all-or-parent-project-for-aggregation). Дело в том, что не всегда ясно, следует ли использовать проект упаковки, который зависит от пакета проекта или многомодульного. Исходный код пакета требует, например, мультимодуля, но нет (простого) способа упаковки исходного кода для ваших зависимостей. Проекты EAR должны следовать второму подходу - не мультимодульному, а скорее последнему проекту в сборке, в зависимости от проекта, который он создает. –

ответ

0

Я что-то неправильно понял? Или эти проекты работают вместе?

Я не уверен, что понял вопрос, но я испытываю желание ответить, что они работают вместе:

  • Агрегирование модулей позволяют, хорошо, агрегированные модули и они должны иметь pom упаковку (и только модули pom могут иметь вложенные проекты).
  • Модуль EAR представляет собой всего лишь модуль с упаковкой ear (и имеет конкретный bindings) и может быть частью многомодульного проекта.

Оба имеют разные цели. Но они работают вместе.

2

Проекты EAR прекрасно работают как часть более крупного агрегированного проекта. В тех случаях, когда вы не хотите, чтобы EAR был отдельным проектом; вы всегда можете создать файл через сборку.

Этот подход имеет смысл в некоторых случаях. Обычно, когда вам нужно создавать несколько версий EAR или когда вы хотите создать развертывание большого EAR-файла, но не нужно сохранять артефакт после его создания.

Я использовал этот подход для решения корпоративного стандарта, который требует, чтобы все развертываемые файлы были EAR, даже если приложение является одним файлом WAR. Сборка может создать EAR с единственным файлом WAR и дескрипторами развертывания.

 Смежные вопросы

  • Нет связанных вопросов^_^