У меня большое приложение (~ 50 модулей), использующее структуру, подобную следующей:
- Применение
- Модули связи
- Цветной коммуникационный модуль
- SSN модуль связи
- и т.д.. модуль связи
- Модуль маршрутизатора
- Сервисные модули
- Сервисный модуль голосования
- Подмодуль веб-интерфейса для голосования
- Подмодуль сборщика голосов для голосования
- и т.д.. для голосования
- Сервисный модуль викторины
- и т.д.. модуль
Я бы хотел импортировать приложение в Maven и Subversion. После некоторых исследований я обнаружил, что для этого существует два практических подхода.
Один использует древовидную структуру так же, как и предыдущий. Недостаток этой структуры в том, что вам нужно множество настроек / хаков, чтобы мультимодульные отчеты работали хорошо с Maven. Другим недостатком является то, что в Subversion стандартный подход к соединительным линиям / тегам / ветвям еще более усложняет хранилище.
В другом подходе используется плоская структура, в которой есть только один родительский проект, а все модули, субмодули и части-подмодули являются прямым потомком родительского проекта. Этот подход хорошо работает для отчетов и проще в Subversion, однако я чувствую, что таким образом теряю часть структуры.
Какой путь вы бы выбрали в долгосрочной перспективе и почему?