Создание многомодульного проекта с загрузкой Spring в Intellij IDEA и поддержка такого проекта может привести к большим проблемам у многих разработчиков.
Эта статья посвящена созданию многомодульного проекта Spring, его обслуживанию, устранению неполадок и всем вопросам, связанным с конфигурацией.
Итак, вот что мы рассмотрим в этом:
- Что такое многомодульный спринт
- Почему многомодульный
- Создайте многомодульный проект с весенней загрузкой
- Добавьте еще один модуль !!!
Что такое многомодульный проект
В многомодульном проекте могут существовать дочерние и родительские отношения между различными компонентами вашего проекта. И вы хотите, чтобы весь ваш код был в одном проекте, разделен на разные компоненты, имел одну или несколько общих зависимостей и мог выполняться как один или несколько jar-файлов или развертываний.
Почему многомодульный проект
По мере увеличения объема вашего проекта вы добавляете множество файлов и классов, что иногда может затруднить просмотр вашего кода и поиск файлов.
Чтобы решить эту проблему, большинство разработчиков разделяют ваши файлы и компоненты на разные пакеты, но в одном проекте. Но само это может стать трудным для понимания и поддержки, если пакетов много.
Таким образом, появляются модули, которые вы можете иметь для различных функций или бизнес-вариантов использования и разделять все вместе, но поддерживать как единый проект и единый репозиторий git. Звучит интересно, не правда ли !!!
Создайте многомодульный проект с весенней загрузкой в intellij
Итак, давайте создадим многомодульный проект с использованием intellij IDEA Ultimate edition. Я буду создавать проект с весенней загрузкой с четырьмя модулями. Итак, приступим к его созданию.
- Откройте 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 и стала причиной написания этой статьи. Если вы хотите сэкономить свое драгоценное время, обязательно позаботьтесь об этом шаге.
Надеюсь, все это поможет разработчикам получать удовольствие от кодирования !!!