Я перехожу из Apache Ant + Apache Ivy
в Apache Maven
для управления жизненным циклом нового проекта.Настройка проекта Struts2 EAR с Maven 3
Я никогда не использовал Maven для официальных релизов, поэтому я новичок в этом.
В настоящее время я установлен и настроен Maven 3 и M2Eclipse плагин, и я создал новый проект Struts2 WAR с The Blank Convention Archetype (struts2-archetype-convention), проект, который я в состоянии развернуть в JBoss 7.
После прочтения тонны статей и StackOverflow ответов я понял, что первого правила Maven является: один проект, один артефакт;
Затем, чтобы работать с EAR мне нужно три проекта: EAR, WAR, EJB; но this answer suggests that I need 4 projects, не три: один EAR, один WAR, один EJB, и один РОДИТЕЛЕЙ. Я думал, что EJB будет родителем ... так что первый вопрос:
- что это правильный путь?
И теперь, когда я рабочий Struts2 WAR, второй вопрос:
- Какой самый лучший (чистый, обычно используемый) способ включить мой существующий WAR в проекте EAR (или в проекте PARENT, если необходимо)?
Создание вручную? Генерирование некоторых других уха артефакт или Java-EE-webapp артефакты, а затем добавить зависимости? Любой пример гипотетического POM.xml был бы весьма полезен.
Просто, чтобы прояснить: архетипы - это всего лишь шаблон для проектов. Вы можете создать проект maven без него, все, что вам нужно, это 'pom.xml'. –
Абсолютно, я отредактирую, чтобы было ясно, –
ИМО отдельный родитель лучше.Вы можете управлять всеми необходимыми зависимостями и конфигурациями там и оставить их вне своих других проектов. И вы можете использовать проект EJB где-то в другом месте. Также см. Эту ссылку: http://books.sonatype.com/mvnref-book/reference/pom-relationships-sect-pom-best-practice.html#pom-relationships-sect-multi-vs-inherit. –