Explicación de sustantivos:
BOM (Lectura de materiales): una buena manera de resolver las dependencias de los paquetes de JAR.
Plataforma de primavera IO
Origen: Spring inicialmente se centró en el COI y AOP, pero ahora se ha convertido en un sistema enorme. Por ejemplo, seguridad, MVC, etc. De esta manera, cuando diferentes módulos están integrados con componentes externos, el procesamiento de dependencia requiere sus respectivos números de versión. Por ejemplo, la integración de resortes más nuevos y cuarzo anterior encontrará problemas, lo que causará inconvenientes para construir y actualizar. Por lo tanto, la plataforma Spring IO surgió, siempre que se introduzca en el proyecto, las dependencias no requieren un número de versión al integrarse externamente. El texto original del sitio web oficial es el siguiente: "Cuando declaras una dependencia de algo que forma parte de la plataforma, ahora podrás omitir el número de versión".
Como ejemplo:
<Code style = "Display: Block; Padding: 0px; Color: Herherit; Box-Singing: Border-Box; Font-Family: 'Fuente Código Pro', Monospace; Font-Size: Undefined; White-Space: Pre; Border-Radius: 0px; Word-Wrap: Normal; Fondo: Transparent;"> <span Style = "Color: RGB (0, 102, 102); style = "box-singing: border-box; color: rgb (0, 0, 136);"> dependientes </span> </span> <span style = "color: rgb (0, 102, 102); box-singing: border-box;"> << span style = "box-singing: border-box; color: rgb (0, 0, 136);"> dependiente </span> </span </span span RGB (0, 102, 102); Border-box; 102, 102); 40px; Border-Box; style = "Box-Singing: Border-Box; Padding: 0px 5px;"> 5 </li> </ul>
Spring IO Platform es solo un archivo POM que registra las versiones de Spring y otros proyectos de código abierto. El número de versión se elimina, por lo que se elimina el problema de manejo de dependencias, porque existe la configuración de versión óptima en la plataforma Spring IO.
Bom relacionado con la primavera
Por supuesto, para resolver estos conflictos de jarras, Springsource ha lanzado varios BOM. Por supuesto, la más famosa es la plataforma de primavera IO Bom, las tres más centrales son: primavera-marco de trabajo, dependencias de boot de primavera y plataforma.
Para los proyectos de primavera, agregar el siguiente código de configuración directamente al archivo pom.xml puede eliminar el problema de administrar los conflictos de versión.
<Code style = "Display: Block; Padding: 0px; Color: Herherit; Box-Singing: Border-Box; Font-Family: 'Fuente Código Pro', Monospace; Font-Size: Undefined; White-Space: Pre; Border-Radius: 0px; Word-Wrap: Normal; Fondo: Transparent;"> <span Style = "Color: RGB (0, 102, 102); style = "box-singing: border-box; color: rgb (0, 0, 136);"> dependiente ganagement </span> </span> <span style = "color: rgb (0, 102, 102); box-sizing: border-box;"> << span style = "box-singing: border-box; color: rgb (0, 0, 136);"> span </span> </span </span </"span Style" RGB (0, 102, 102); 136); "> GroupId </span>> </span> org.springframework <span style =" color: rgb (0, 102, 102); Box-Siling: Border-Box; "> </<span style =" Box-singing: border-box; border-box; "> << span style =" box-singing: border-box; 136); "> ArtifactId </span>> </span> <span style =" color: rgb (0, 102, 102); border-box; "> << span style =" box-singing: border-box; 136); "> Versión </span>> </span> <span style =" color: rgb (0, 102, 102); style="box-sizing: border-box;"></span style="color: rgb(0, 102, 102); box-sizing: border-box;"><<span style="color: rgb(0, 102, 102); box-sizing: border-box;"><<span style="box-sizing: border-box;"></span style="box-sizing: border-box;"></span style="box-sizing: border-box; "> </span style =" color: rgb (0, 102, 102); 102); Color: RGB (0, 0, 136); "> Tipo </span>> </span> pom <span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> </<span style =" box-sizing: border-box; Color: RGB (0, 0, 136); "> Tipo </span>> </span> <span style =" box-singing: border-box; Color: RGB (0, 0, 136); "> Tipo </span >> </span> <span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> << span style =" box-singing: border-box; color: rgb(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 136); "> Scope </span> </span> importar 102, 102); box-sizing: border-box; "> </<span style =" box-sizing: border-box; color: rgb (0, 0, 136); "> alcance </span>> </span> <span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> </<span style =" box-sizing: border-box; Color: RGB (0, 0, 136); "> Dependencia </span> </span> <span style =" box-singing: border-box; Color: RGB (0, 0, 136); "> Dependencia </span> </span> <span style =" box-singing: border-box; Color: RGB (0, 0, 136); "> Dependencia </span> </span> <span style =" box-singing: border-box; Color: RGB (0, 0, 136); "> Dependencia </span> </span> <span style =" box-singing: border-box; Color: RGB (0, 0, 136); "> Dependencia </span> </span> <span style =" box-singing: border-box; Color: RGB (0, 0, 136); "> Dependencia </span> </span> <span style =" box-singing: border-box; Color: RGB (0, 0, 136); "> Dependencia </span> </span> <span style =" box-singing: border-box; color: rgb (0, 0, 136); "> style =" color: rgb (0, 102, 102); box-sizing: border-box; "> << span style =" box-singing: border-box; Color: RGB (0, 0, 136); "> Dependencia </span> </span> <span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> << span style =" box-singing: border-box; Color: RGB (0, 0, 136); "> Groupid </span> </span> org.springframework.boot <span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> << span style =" box-singing: border-box; color: rgb(0, 0, 136);">groupId</span>></span>org.springframework.boot<span style="color: rgb(0, 0, 136);">groupId</span>></span>org.springframework.boot<span style="color: rgb(0, 0, 136);"><<span style="box-sizing: border-box; color: rgb(0, 0, 136);">groupId</span>></span>org.springframework.boot<span style="color: rgb(0, 0, 136);">groupId</span>></span>org.springframework.boot<span style="color: rgb(0, 0, 136);"><<span style="box-sizing: border-box; Color: RGB (0, 0, 136); "> GroupId </span>> </span> org.springframework.boot <span style =" color: rg 102, 102); box-sizing: border-box; "> </<span style =" box-sizing: border-box; Color: RGB (0, 0, 136); "> ArtifactId </span>> </span> Spring-Boot-Dependencies <span style =" Color: RGB (0, 102, 102); box-sizing: border-box; "> << span style =" box-singing: border-box; Color: RGB (0, 0, 136); "> ArtifactId </span>> </span> Spring-Boot-Dependencies <span style =" Color: RGB (0, 102, 102); box-sizing: border-box; "> << span style =" box-singing: border-box; Color: RGB (0, 0, 136); "> ArtifactId </span>> </span> Spring-Boot-Dependencies <span style =" Color: RGB (0, 102, 102); box-sizing: border-box; "> << span style =" box-singing: border-box; Color: RGB (0, 0, 136); "> ArtifactId </span>> </span> Spring-Boot-Dependencies <span style =" Color: RGB (0, 102, 102); box-sizing: border-box; "> </<span style =" box-sizing: border-box; Color: RGB (0, 0, 136); "> ArtifactId </span>> </span> <span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> << span style =" box-singing: border-box; Color: RGB (0, 0, 136); "> Versión </span>> </span> 1.3.0.m2 <span style =" color: rgb (0, 102, 102); box-sizing: border-box;"></<span style="box-sizing: border-box;"></span style="box-sizing: border-box;"></span style="box-sizing: border-box;"></span style="box-sizing: border-box;"></span style="box-sizing: border-box;"></span style="box-sizing: border-box;"></span style="box-sizing: border-box; "> </span style =" box-sizing: border-box; "> </span style =" box-singing: border-box; "> </span style =" box-singing: border-box; "> </span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> </span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> </span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> </span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> </span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> </span style syle =" box-sizing: border-box; Color: RGB (0, 0, 136); "> Versión </span >> </span> <span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> << span style =" box-singing: border-box; Color: RGB (0, 0, 136); "> Tipo </span>> </span> pom <span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> </span style =" box-sizing: border-box; Color: RGB (0, 0, 136); "> Tipo </span >> </span style =" box-singing: border-box; Color: RGB (0, 0, 136); "> Tipo </span >> </span style =" box-singing: border-box; color: rgb(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 136); "> type </span> </span> <span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> << span style =" box-singing: border-box; color: rgb (0, 0, 136); "> alcance </span>> </span> import <span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> </span style =" box-sizing: border-box; color: rgb (0, 0, 136); "> alcance </span>> </span> <span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> </span style =" box-sizing: border-box; color: rgb (0, 0, 136); "> alcance </span>> </span> <span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> </<span style =" box-sizing: border-box; Color: RGB (0, 0, 136); "> Dependiente </span>> </span> <span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> << span style =" box-singing: border-box; Color: RGB (0, 0, 136); "> Dependiente </span>> </span> <span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> << span style =" box-singing: border-box; Color: RGB (0, 0, 136); "> Dependiente </span>> </span> <span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> << span style =" box-singing: border-box; color: rgb (0, 0, 136); "> groupid </span> </span> io.spring.platform <span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> </span style =" box-sizing: border-box; Color: RGB (0, 0, 136); "> GroupId </span>> </span> <span style =" color: rgb (0, 102, 102); box-sizing: border-box;"></span style="box-sizing: border-box;"></span style="box-sizing: border-box;"></span style="box-sizing: border-box;"></span style="box-sizing: border-box;"></span style="box-sizing: border-box;"></span style="box-sizing: border-box;"></span style="box-sizing: border-box; "> </span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> </span style =" color: rgb (0, 102, 102); box-sizing: border-box;"></span style="box-sizing: border-box;"></span style="box-sizing: border-box;"></span style="box-sizing: border-box;"></span style="box-sizing: border-box;"></span style="box-sizing: border-box;"></span style="font-sizing: border-box;"></span style="font-sizing: border-box; "> </span style =" font-singing: border-box; "> </span style =" font-singing: border-box; "> </span style =" font-singing: border-box; "> <style =" box-sizing: border-box; Color: RGB (0, 0, 136); "> ArtifactID </span> </span> Plataforma-Bom <span style =" Color: RGB (0, 102, 102); box-sizing: border-box; "> </<span style =" box-sizing: border-box; Color: RGB (0, 0, 136); "> ArtifactId </span>> </span> <span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> </span style =" box-sizing: border-box; Color: RGB (0, 0, 136); "> Versión </span >> </span> 1.1.3.release <span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> </<span style =" box-sizing: border-box; Color: RGB (0, 0, 136); "> Versión </span >> </span> <span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> << span style =" box-singing: border-box; Color: RGB (0, 0, 136); "> Versión </span >> </span> <span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> << span style =" box-singing: border-box; Color: RGB (0, 0, 0, 136); "> Tipo </span>> </span> pom <span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> </<span style =" box-sizing: border-box; Color: RGB (0, 0, 136); "> Tipo </span >> </span> <span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> << span style =" box-singing: border-box; color: rgb (0, 0, 136); "> alcance </span>> </span> import <span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> << span style =" box-singing: border-box; color: rgb (0, 0, 136); "> alcance </span>> </span> import <span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> </<span style =" box-sizing: border-box; color: rgb (0, 0, 136); "> alcance </span>> </span> <span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> </<span style =" box-sizing: border-box; Color: RGB (0, 0, 136); "> Dependiente </span>> </span> <span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> </<span style =" box-sizing: border-box; Color: RGB (0, 0, 136); "> Dependiente </span>> </span> <span style =" color: rgb (0, 102, 102); box-sizing: border-box; "> </<span style =" box-sizing: border-box; Color: RGB (0, 0, 136); "> Dependientes </span> </span> <span style =" Color: RGB (0, 102, 102); box-sizing: border-box; "> </<span style =" box-sizing: border-box; Color: RGB (0, 0, 136); "> DependentManagement </span>> </span> </code> <ul style =" box-tamaño: border-box; Posición: Absoluto; Ancho: 50px; arriba: 0px; Izquierda: 0px; margen: 0px; relleno: 6px 0px 40px; ancho de derecho fronterizo: 1px; estilo fronterizo: sólido; color de la derecha fronteriza: RGB (221, 221, 221); Estilo de lista: Ninguno; Text-Align: Right; Color de fondo: RGB (238, 238, 238); "> <li style =" box-tamaño: border-box; Padre: 0px 5px; "> 1 </li> <li style =" box-singing: border-box; Pading: 0px 5px; "> 2 </li> <li style =" box-singing: border-box; Pading: 0px 5px; "> 3 </li> <li style =" box-tamaño: border-box; Pading: 0px 5px; "> 4 </li> <li style =" box-tamaño: border-box; Padre: 0px 5px; "> 5 </li> <li style =" box-singing: border-box; Padre: 0px 5px; "> 6 </li> <li style =" box-singing: border-box; Padre: 0px 5px; "> 7 </li> <li style =" box-singing: border-box; Padre: 0px 5px; "> 7 </li> <li style =" box-singing: border-box; Padre: 0px 5px; "> 7 </li> <li style =" box-singing: border-box; Padre: 0px 5px; "> 7 </li> <li style =" box-singing: border-box; Padre: 0px 5px; "> 8 </li> <li style =" box-singing: border-box; Padre: 0px 5px; "> 9 </li> <li style =" box-singing: border-box; Padre: 0px 5px; "> 10 </li> <li style =" box-singing: border-box; Pading: 0px 5px; "> 11 </li> <li style =" box-singing: border-box; Padre: 0px 5px; "> 12 </li> <li style =" box-singing: border-box; Padre: 0px 5px; "> 13 </li> <li style =" box-singing: border-box; Padre: 0px 5px; "> 14 </li> <li style =" box-singing: border-box; Relador: 0px 5px; "> 15 </li> <li style =" box-singing: border-box; Padre: 0px 5px; "> 16 </li> <li style =" box-singing: border-box; Padre: 0px 5px; "> 17 </li> <li style =" box-singing: border-box; Pading: 0px 5px; "> 18 </li> <li style =" box-singing: border-box; Pading: 0px 5px; "> 18 </li> <li style =" box-singing: border-box; Padre: 0px 5px; "> 19 </li> <li style =" box-singing: border-box; Padre: 0px 5px; "> 20 </li> <li style =" box-singing: border-box; Padre: 0px 5px; "> 21 </li> <li style =" box-singing: border-box; Padre: 0px 5px; "> 22 </li> <li style =" box-singing: border-box; Pading: 0px 5px; "> 23 </li> <li style =" box-singing: border-box; Padre: 0px 5px; "> 24 </li> <li style =" box-singing: border-box; Padre: 0px 5px; "> 24 </li> <li style =" box-singing: border-box; relleno: 0px 5px; "> 25 </li> </ul>
Artículo de referencia
Introducción a la plataforma Spring IO
Resumir
Lo anterior es todo el contenido de este artículo sobre una breve discusión sobre la solución de Spring a las dependencias de la lista de materiales de paquetes JAR. Espero que sea útil para todos. Los amigos interesados pueden continuar referiéndose a otros temas relacionados en este sitio. Si hay alguna deficiencia, deje un mensaje para señalarlo. ¡Gracias amigos por su apoyo para este sitio!