Создание многомодульного проекта с загрузкой Spring в Intellij IDEA и поддержка такого проекта может привести к большим проблемам у многих разработчиков.

Эта статья посвящена созданию многомодульного проекта Spring, его обслуживанию, устранению неполадок и всем вопросам, связанным с конфигурацией.

Итак, вот что мы рассмотрим в этом:

  1. Что такое многомодульный спринт
  2. Почему многомодульный
  3. Создайте многомодульный проект с весенней загрузкой
  4. Добавьте еще один модуль !!!

Что такое многомодульный проект

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

Почему многомодульный проект

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

Чтобы решить эту проблему, большинство разработчиков разделяют ваши файлы и компоненты на разные пакеты, но в одном проекте. Но само это может стать трудным для понимания и поддержки, если пакетов много.

Таким образом, появляются модули, которые вы можете иметь для различных функций или бизнес-вариантов использования и разделять все вместе, но поддерживать как единый проект и единый репозиторий git. Звучит интересно, не правда ли !!!

Создайте многомодульный проект с весенней загрузкой в ​​intellij

Итак, давайте создадим многомодульный проект с использованием intellij IDEA Ultimate edition. Я буду создавать проект с весенней загрузкой с четырьмя модулями. Итак, приступим к его созданию.

  1. Откройте Intellij и выберите File- ›New-› Project. На левой вкладке выберите Spring-initializr, выберите Project SDK на правой панели и нажмите «Далее».

2. В следующем окне введите группу и артефакт и выберите тип Maven POM, который в основном указывает, что вы хотите создать многомодульный проект, и нажмите «Далее». Выбор Maven pom также указывает intellij не включать каталог src в ваш родительский проект.

3. В следующем окне выберите зависимости, какие хотите. Для простоты мы воспользуемся только веб-зависимостью Spring и нажмем «Далее».

4. Затем введите имя проекта и закончите.

5. Итак, теперь проект intellij откроется только с pom.xml и без других основных каталогов, а также без каталога src. И помпон создается как родительский пом.

6. Теперь добавим модули, в которых будем писать код и выполнять нашу бизнес-логику. Итак, мы будем создавать четыре модуля следующим образом:

Модуль приложения - который будет иметь основной класс весенней загрузки Application.java

Модуль утилит - общий модуль, который может использоваться всеми остальными модулями независимо.

auth-module - Модуль для работы с каталогом

stream-module - модуль для некоторых потоков, который использует модуль auth и модуль утилит.

Итак, щелкните правой кнопкой мыши свой проект, щелкните правой кнопкой мыши - ›Создать -› Модуль

На левой панели выберите Maven, а на правой панели выберите SDK и нажмите «Далее».

Выберите родительский проект в качестве родительского проекта, введите имя модуля и нажмите кнопку «Готово».

Теперь в каталог вашего проекта будет добавлен новый модуль с каталогом src и отдельным pom.xml с родительским pom проекта в качестве родительского.

Теперь вы можете создать пакет в папке src / main / java и создать свой класс приложения для загрузки спринта.

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

Зависимости следующие:

а. Модули приложений - это то место, где загружается весенняя загрузка. И он будет зависеть от всех модулей, так что все модули могут вставать во время выполнения. Здесь следует отметить, что какие бы зависимости ни были в pom app-module, только они будут инициализированы как Spring beans, и только эти классы или контроллер будут доступны во время выполнения.

б. Утилиты требуются как для модуля аутентификации, так и для модуля потока.

c. Для потока требуется модуль аутентификации.

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

mvn spring-boot: запустить

Добавьте еще один модуль !!!

Так что просто добавить новый модуль в существующий проект.

Но если в новом модуле нужно создать какой-либо контроллер или Spring beans, обязательно добавьте новую зависимость модуля в app-module.

Если вы не добавите новую зависимость модуля в app-module, ваши контроллеры не будут вызываться, и вы получите ошибку 404 для этого конкретного api.

Собственно ошибка 404 и стала причиной написания этой статьи. Если вы хотите сэкономить свое драгоценное время, обязательно позаботьтесь об этом шаге.

Надеюсь, все это поможет разработчикам получать удовольствие от кодирования !!!