English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Gestión de dependencias de SpringBoot

Spring Boot gestiona automáticamente dependencias y configuraciones. Cada versión de Spring Boot proporciona una lista de dependencias que admite. La lista de dependencias puede compararse con Maven Usados juntos Lista de materiales(Relaciones de dependencia de Spring Boot) parte. Por lo tanto, no necesitamos especificar la versión de la dependencia en la configuración. Spring Boot se gestiona a sí mismo. Cuando actualizamos la versión de Spring Boot, Spring Boot actualiza automáticamente todos los dependencias de manera consistente.

Ventajas de la gestión de dependencias

Ofrecer una centralización de información de dependencias especificando una versión de Spring Boot en un lugar. Sí, cuando cambiamos de una versión a otra, ayuda. Evita la incompatibilidad entre bibliotecas de Spring Boot de diferentes versiones. Solo necesitamos escribir un nombre de repositorio y especificar la versión. Es muy útil en proyectos de múltiples módulos.

Atención: Si es necesario, Spring Boot también puede sobrescribir las versiones de las dependencias.

sistema de gestión de dependencias de Maven

El proyecto Maven se crea desde spring-boot-starter-parent hereda las siguientes características:

por defecto versión del compilador de Java UTF-8 código fuente que proviene de spring-boot-dependencia-pom hereda una Sección de Dependencia .Gestiona las versiones comunes de las dependencias. Para esta dependencia, ignora  etiqueta. desde spring-boot-las dependencias que heredan el POM de las dependencias inteligentefiltering de recursos inteligenteconfiguración del complemento

Heredar Starter Parent

Al configurar el proyecto, las siguientes spring-boot-starter-parent se heredará automáticamente.

<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.2.BUILD-SNAPSHOT</version>      <!-- lookup parent from repository -->
<relativePath/> 
</parent>
Atención: En las dependencias anteriores, solo especificamos la versión de Spring Boot. Si queremos agregar otros starters, simplemente elimineetiqueta. Del mismo modo, también podemos sobrescribir la dependencia personalizada mediante la sobrescripción de las propiedades del proyecto.

Por ejemplo, si queremos agregar otra dependencia con el mismo artefacto inyectado, inyectemos nuevamente la dependencia <properties>etiqueta para sobrescribir

cambiar la versión de Java

También podemos usar <java.version>Usar la etiqueta para cambiar la versión de Java.

<properties>  
<java.version>1.8</java.version>  
</properties>

Agregar complemento Maven de Spring Boot

También podemos agregar pom.xml en el archivo Agregar complemento Maven.Enwrapa el proyecto en un archivo ejecutable jar en el archivo.

<build>  
<plugins>  
<plugin>  
<groupId>org.springframework.boot</groupId>  
<artifactId>spring-boot-maven-plugin</artifactId>  
</plugin>  
</plugins>  
</build>

Spring Boot sin POM de padre

Si no queremos usar spring-boot starter-parent Aún así, si queremos aprovechar las ventajas de la gestión de dependencias, podemos usar  Etiquetas, como se muestra a continuación:

Atención: No mantiene la gestión de complementos.
<dependencyManagement>
<dependencies>
<dependency><!-- dependency management de Spring Boot al proyecto -->
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>2.2.2.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>

Las dependencias anteriores no permiten la sustitución. Para lograr la sustitución, necesitamos importar  en la etiqueta de marcador spring-boot-antes de la entrada de dependencies.

Por ejemplo, para actualizar otro spring-data-releasetrain ,agregar los siguientes elementos de dependencia en el archivo pom.xml.

<dependencyManagement>
<dependencies>
<!--Anula la release train de Spring Data-->
<dependency>
<groupId>org.springframework.data/groupId>
<artifactId>spring-data-releasetrain/artifactId>
<version>Fowler-SR2</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>2.2.2.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>