Модуляризация web-проекта на java

Есть большой web-проект разработанный на java с использованием spring и spring mvc. Сборка проекта осуществляется с помощью maven, проект сделан в виде одного maven-модуля.
Возникла необходимость его нарезать на части (модули в терминологии maven), чтобы можно было делать несколько сборок, с разным набором модулей, для разных инсталляций проекта (web-функциональность также будет нарезана на модули).

На данный момент есть два варианта, как это сделать:
1) перейти на servlet api 3.0 и собирать модули в виде jar с web-fragment.xml, упаковывая туда jsp файлы и другие ресурсы.
2) генерировать в каждом модуле свой war файл, и потом с помощью maven-assembly-plugin, собирать большой war-файл из нескольких маленьких.

Скажите «за» и «против» каждого варианта. Есть ли какие-нибудь лучшие альтернативы?
  • Вопрос задан
  • 4374 просмотра
Пригласить эксперта
Ответы на вопрос 1
Если уж речь зашла о модуляризации в Java, то уместно вспомнить об OSGi, поддерживаемой Spring.

Вот тут описывается поддержка веб-приложений. OSGi позволяет собирать ресурсы (классы, JSP, tld) из разных модулей или фрагментов. Описание, правда, выглядит несколько сложным. В реальности всё как-то проще.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы