Как создать модульный java проект? - PullRequest
0 голосов
/ 01 мая 2020

Мне нужно создать проект java, где структура будет выглядеть следующим образом:

enter image description here

То есть проект будет иметь общая папка, которая будет содержать в основном фреймворк. Тогда будут разные модули, которые зависят от общей структуры и будут иметь собственную структуру. Как мне установить такую ​​зависимость, используя maven / sbt? Проект должен быть структурирован таким образом, чтобы:

  1. При необходимости каркас можно было доставить в виде баночки в совершенно другой проект
  2. Каждый модуль может быть доставлен отдельно в виде баночки ,
  3. Весь проект может быть доставлен в виде jar

Что мне нужно, так это узнать, как мне использовать разные pom.xml / build.sbt на каждом уровне и связывать их зависимости?

Можете ли вы предложить какое-либо решение?

1 Ответ

0 голосов
/ 03 мая 2020

Самая важная вещь уже была сказана Андреасом:

Ваш "фреймворк" нуждается в модуле, как и все остальное. Таким образом, ваш основной проект будет иметь четыре модуля:

  • framework
  • module1
  • module2
  • module3

В главном POM эти четыре будут перечислены как модули.

framework будет содержать код платформы. module1 также не содержит кода, но содержит два подмодуля для module1-framework и module1a. POM module1 определит эти модули.

Если вы соберете проект, вы получите jar для каждого из (под) модулей.

Вы можете использовать плагин сборки или Плагин Shade для объединения некоторых из них в большие банки (даже для всего проекта), но это редко полезно. Maven хорош для разрешения зависимостей, так как нет необходимости объединять множество jar-файлов в один (за исключением исполняемых jar-файлов).

...