1. Обзор
Spring Boot предоставляет родительский POM для упрощения создания приложений Spring Boot.
Однако использование родительского POM может быть не всегда желательно, если у нас уже есть родитель, от которого мы можем наследовать.
В этом кратком руководстве мы рассмотрим, как мы все еще можем использовать загрузку без родительского стартера.
2. Пружинный Ботинок Без Родительского Помпона
Родитель pom.xml заботится об управлении зависимостями и плагинами. По этой причине наследование от него обеспечивает ценную поддержку в приложении, поэтому обычно это предпочтительный способ действий при создании Загрузочного приложения. Вы можете найти более подробную информацию о том, как создать приложение на основе родительского стартера, в нашей предыдущей статье .
Однако на практике мы можем быть ограничены правилами проектирования или другими предпочтениями в использовании другого родителя.
К счастью, Spring Boot предлагает альтернативу наследованию от родительского стартера, которая все еще может предоставить нам некоторые из своих преимуществ.
Если мы не используем родительский POM, мы все равно можем извлечь выгоду из управления зависимостями , добавив spring-boot-зависимости артефакт с областью действия=импорт :
org.springframework.boot spring-boot-dependencies 2.4.0 pom import
Далее мы можем начать просто добавлять зависимости Spring и использовать функции Spring Boot :
org.springframework.boot spring-boot-starter-web
С другой стороны, без родительского POM мы больше не получаем выгоды от управления плагинами. Это означает, что нам нужно явно добавить spring-boot-maven-плагин :
org.springframework.boot spring-boot-maven-plugin
3. Переопределение Версий Зависимостей
Если мы хотим использовать для определенной зависимости другую версию, отличную от версии, управляемой загрузкой, нам нужно объявить ее в разделе dependencyManagement , прежде чем будет объявлена spring-boot-зависимости :
// ... org.springframework.boot spring-boot-starter-data-jpa 2.4.0
Напротив, простое объявление версии для зависимости вне тега управление зависимостями больше не будет работать.
4. Заключение
В этом кратком руководстве мы рассмотрели, как мы можем использовать Spring Boot без родительского pom.xml.
Исходный код примеров можно найти на GitHub .