Explicação de substantivos:
BOM (Lei de Materiais): Uma boa maneira de resolver dependências do pacote JAR.
Spring IO Platform
Origem: a primavera inicialmente focada no COI e na AOP, mas agora se transformou em um sistema enorme. Por exemplo, segurança, MVC, etc. Dessa forma, quando diferentes módulos são integrados com componentes externos, o processamento de dependência requer seus respectivos números de versão. Por exemplo, a integração de fontes mais recentes e quartzo mais antigo encontrará problemas, o que causará inconvenientes para construir e atualizar. Portanto, a plataforma Spring IO surgiu, desde que seja introduzida no projeto, as dependências não exigem um número de versão ao integrar externamente. O texto original do site oficial é o seguinte: "Quando você declarar uma dependência de algo que faz parte da plataforma, agora poderá omitir o número da versão".
Como exemplo:
<Code Style = "Display: Block; Preparo: 0px; cor: herdar; tamanho da caixa: Border-box; Font-Family: 'Source Code Pro', Monospace; Font-Size: Undefined; White-Space: Pr; style = "Box-sizing: Border-box; cor: rgb (0, 0, 136);"> dependentes </span>> </span> <span style = "cor: rgb (0, 102, 102); spann spann; RGB (0, 102, 102); Border-box; 102, 102); 40px; Border-box; style = "Box-sizing: Border-box; preenchimento: 0px 5px;"> 5 </li> </ul>
A plataforma Spring IO é apenas um arquivo POM que registra as versões do Spring e outros projetos de código aberto. O número da versão é eliminado, portanto, o problema do manuseio de dependências é eliminado, porque existe a configuração ideal da versão na plataforma Spring IO.
Bom relacionado à primavera
Obviamente, para resolver esses conflitos de jar, a Springsource lançou várias BOMs. Obviamente, o mais famoso é a plataforma de primavera Bom, os três mais essenciais são: Spring-Framework-BOM, Spring-Boot-dependências e plataforma-Bom.
Para projetos de primavera, adicionar o seguinte código de configuração diretamente ao arquivo pom.xml pode eliminar o problema de gerenciar conflitos de versão.
<Code Style = "Display: Block; Preparo: 0px; cor: herdar; tamanho da caixa: Border-box; Font-Family: 'Source Code Pro', Monospace; Font-Size: Undefined; White-Space: Pr; style = "Box-sizing: Border-box; cor: rgb (0, 0, 136);"> dependentManagement </span>> </span> <span style = "cor: rgb (0, 102, 102); spann/spann/spann/spanp (rgb (0," 136; rgb (0, 102, 102); 136); BOX-SIMENTE: Border-box; "> </<span style =" box-size: border-box; Border-box; "> << span style =" box-size: border-box; 136); "> ArtifactID </span >> </span> <span style =" cor: rgb (0, 102, 102); Border-box; "> << span style =" box-size: border-box; 136); "> versão </span>> </span> <span style =" cor: rgb (0, 102, 102); style = "Box-sizing: Border-box;"> </span style = "cor: rgb (0, 102, 102); tamanho da caixa: Border-box;"> << span style = "cor: rgb (0, 102, 102); span-sizing: border-box; Border-box; "> </span style =" cor: rgb (0, 102, 102); 102); cor: rgb (0, 0, 136); "> type </span>> </span> pom <span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> </<span style =" Box-sizing: Border-box; Cor: rgb (0, 0, 136); "> type </span>> </span> <span style =" box-sizing: border-box; Cor: rgb (0, 0, 136); "> type </span>> </span> <span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> << span style =" box-sizing: 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, 0. 102, 102); Timing de caixa: Border-box; "> </<span style =" Box-sizing: Border-box; cor: rgb (0, 0, 136); "> escopo </span>> </span> <span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> </<span style =" Box-sizing: Border-box; Cor: rgb (0, 0, 136); "> dependência </span>> </span> <span style =" size de caixa: caixa de fronteira; Cor: rgb (0, 0, 136); "> dependência </span>> </span> <span style =" size de caixa: caixa de fronteira; Cor: rgb (0, 0, 136); "> dependência </span>> </span> <span style =" size de caixa: caixa de fronteira; Cor: rgb (0, 0, 136); "> dependência </span>> </span> <span style =" size de caixa: caixa de fronteira; Cor: rgb (0, 0, 136); "> dependência </span>> </span> <span style =" size de caixa: caixa de fronteira; Cor: rgb (0, 0, 136); "> dependência </span>> </span> <span style =" size de caixa: caixa de fronteira; Cor: rgb (0, 0, 136); "> dependência </span>> </span> <span style =" size de caixa: caixa de fronteira; Cor: rgb (0, 0, 136); "> style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> << span style =" box-sizing: border-box; cor: rgb (0, 0, 136); "> dependência </span>> </span> <span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> << span style =" box-sizing: border-box; cor: rgb (0, 0, 136); "> groupID </span>> </span> org.springframework.boot <span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> << span style =" box-sizing: border-box; Cor: rgb (0, 0, 136); "> groupID </span>> </span> org.springframework.boot <span style =" cor: rgb (0, 0, 136); "> groupId </span >> </span> org.springFramework.boot <span style =" "cor </rgb (0 0, 0, 0,20; Cor: rgb (0, 0, 136); "> groupID </span>> </span> org.springframework.boot <span style =" cor: rgb (0, 0, 136); "> groupId </span >> </span> org.springFramework.boot <span style =" "cor </rgb (0 0, 0, 0,20; cor: rgb (0, 0, 136); "> groupID </span>> </span> org.springframework.boot <span style =" cor: rg 102, 102); Timing de caixa: Border-box; "> </<span style =" Box-sizing: Border-box; cor: rgb (0, 0, 136); "> ArtifactId </span>> </span> spring-boot-dependências <span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> << span style =" box-sizing: border-box; cor: rgb (0, 0, 136); "> ArtifactId </span>> </span> spring-boot-dependências <span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> << span style =" box-sizing: border-box; cor: rgb (0, 0, 136); "> ArtifactId </span>> </span> spring-boot-dependências <span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> << span style =" box-sizing: border-box; cor: rgb (0, 0, 136); "> ArtifactId </span>> </span> spring-boot-dependências <span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> </<span style =" Box-sizing: Border-box; cor: rgb (0, 0, 136); "> ArtifactId </span>> </span> <span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> << span style =" box-sizing: border-box; cor: rgb (0, 0, 136); "> versão </span>> </span> 1.3.0.m2 <span style =" cor: 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 =" span-sizing: border-box; "> </span =" span-sizing: border-box; Border-box; "> </span style =" box-sizing: border-box; "> </span style =" box-sizing: border-box; "> </span style =" box-sizing: border-box; "> </span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> </span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> </span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> </span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> </span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> </span style =" box-sizing: border-box; cor: rgb (0, 0, 136); "> versão </span>> </span> <span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> << span style =" box-sizing: border-box; cor: rgb (0, 0, 136); "> type </span>> </span> pom <span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> </span style =" Box-sizing: Border-box; Cor: rgb (0, 0, 136); "> type </span>> </span style =" box-sizing: border-box; Cor: rgb (0, 0, 136); "> type </span>> </span style =" box-sizing: 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, 136); Timing de caixa: Border-box; "> << span style =" box-sizing: border-box; cor: rgb (0, 0, 136); "> escopo </span>> </span> importar <span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> </span style =" Box-sizing: Border-box; cor: rgb (0, 0, 136); "> escopo </span>> </span> <span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> </span style =" Box-sizing: Border-box; cor: rgb (0, 0, 136); "> escopo </span>> </span> <span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> </<span style =" Box-sizing: Border-box; cor: rgb (0, 0, 136); "> dependente </span>> </span> <span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> << span style =" box-sizing: border-box; cor: rgb (0, 0, 136); "> dependente </span>> </span> <span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> << span style =" box-sizing: border-box; cor: rgb (0, 0, 136); "> dependente </span>> </span> <span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> << span style =" box-sizing: border-box; cor: rgb (0, 0, 136); "> groupID </span>> </span> io.spring.platform <span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> </span style =" Box-sizing: Border-box; cor: rgb (0, 0, 136); "> groupID </span>> </span> <span style =" cor: 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 =" box-sizing: border-box; Border-box; "> </span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> </span style =" cor: 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 =" size-sizing: border-box; Border-box; "> </span style =" font-sizing: border-box; "> </span style =" font-sizing: border-box; "> </span style =" font-sizing: border-box; "> <style =" caixa de caixa: caixa de borda; cor: rgb (0, 0, 136); "> ArtifactId </span>> </span> plataform-bom <span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> </<span style =" Box-sizing: Border-box; cor: rgb (0, 0, 136); "> ArtifactId </span>> </span> <span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> </span style =" Box-sizing: Border-box; cor: rgb (0, 0, 136); "> versão </span>> </span> 1.1.3.Release <span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> </<span style =" Box-sizing: Border-box; cor: rgb (0, 0, 136); "> versão </span>> </span> <span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> << span style =" box-sizing: border-box; cor: rgb (0, 0, 136); "> versão </span>> </span> <span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> << span style =" box-sizing: border-box; cor: rgb (0, 0, 0, 136); "> type </span>> </span> pom <span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> </<span style =" Box-sizing: Border-box; Cor: rgb (0, 0, 136); "> type </span>> </span> <span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> << span style =" box-sizing: border-box; cor: rgb (0, 0, 136); "> escopo </span>> </span> importar <span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> << span style =" box-sizing: border-box; cor: rgb (0, 0, 136); "> escopo </span>> </span> importar <span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> </<span style =" Box-sizing: Border-box; cor: rgb (0, 0, 136); "> escopo </span>> </span> <span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> </<span style =" Box-sizing: Border-box; cor: rgb (0, 0, 136); "> dependente </span>> </span> <span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> </<span style =" Box-sizing: Border-box; cor: rgb (0, 0, 136); "> dependente </span>> </span> <span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> </<span style =" Box-sizing: Border-box; cor: rgb (0, 0, 136); "> dependentes </span>> </span> <span style =" cor: rgb (0, 102, 102); Timing de caixa: Border-box; "> </<span style =" Box-sizing: Border-box; Cor: rgb (0, 0, 136); "> dependentmanagement Posição: Absoluto; Largura: 50px; Top: 0px; Esquerda: 0px; margem: 0px; preenchimento: 6px 0px 40px; largura de fronteira: 1px; estilo de fronteira: sólido; cor-direita: RGB (221, 221, 221); estilo de lista: nenhum; Alinhamento de texto: à direita; Background-Color: RGB (238, 238, 238); "> <li style =" box-sizing: border-box; preenchimento: 0px 5px; "> 1 </li> <li style =" box-sizing: border-box; preenchimento: 0px 5px; "> 2 </li> <li style =" box-sizing: border-box; preenchimento: 0px 5px; "> 3 </li> <li style =" box-sizing: border-box; preenchimento: 0px 5px; "> 4 </li> <li style =" box-sizing: border-box; preenchimento: 0px 5px; "> 5 </li> <li style =" box-sizing: border-box; preenchimento: 0px 5px; "> 6 </li> <li style =" box-sizing: border-box; preenchimento: 0px 5px; "> 7 </li> <li style =" caixa de caixa: caixa de fronteira; preenchimento: 0px 5px; "> 7 </li> <li style =" caixa de caixa: caixa de fronteira; preenchimento: 0px 5px; "> 7 </li> <li style =" caixa de caixa: caixa de fronteira; preenchimento: 0px 5px; "> 7 </li> <li style =" caixa de caixa: caixa de fronteira; preenchimento: 0px 5px; "> 8 </li> <li style =" caixa de caixa: caixa de fronteira; preenchimento: 0px 5px; "> 9 </li> <li style =" box-sizing: border-box; preenchimento: 0px 5px; "> 10 </li> <li style =" caixa de caixa: caixa de fronteira; preenchimento: 0px 5px; "> 11 </li> <li style =" box-sizing: border-box; preenchimento: 0px 5px; "> 12 </li> <li style =" box-sizing: border-box; preenchimento: 0px 5px; "> 13 </li> <li style =" box-sizing: border-box; preenchimento: 0px 5px; "> 14 </li> <li style =" caixa de caixa: caixa de fronteira; preenchimento: 0px 5px; "> 15 </li> <li style =" box-sizing: border-box; preenchimento: 0px 5px; "> 16 </li> <li style =" caixa de caixa: caixa de fronteira; preenchimento: 0px 5px; "> 17 </li> <li style =" box-sizing: border-box; preenchimento: 0px 5px; "> 18 </li> <li style =" caixa de caixa: caixa de fronteira; preenchimento: 0px 5px; "> 18 </li> <li style =" caixa de caixa: caixa de fronteira; preenchimento: 0px 5px; "> 19 </li> <li style =" caixa de caixa: caixa de fronteira; preenchimento: 0px 5px; "> 20 </li> <li style =" box-sizing: border-box; preenchimento: 0px 5px; "> 21 </li> <li style =" box-sizing: border-box; preenchimento: 0px 5px; "> 22 </li> <li style =" box-sizing: border-box; preenchimento: 0px 5px; "> 23 </li> <li style =" box-sizing: border-box; preenchimento: 0px 5px; "> 24 </li> <li style =" caixa de caixa: caixa de fronteira; preenchimento: 0px 5px; "> 24 </li> <li style =" caixa de caixa: caixa de fronteira; preenchimento: 0px 5px; "> 25 </li> </ul>
Artigo de referência
Introdução à plataforma Spring IO
Resumir
O exposto acima é o conteúdo inteiro deste artigo sobre uma breve discussão sobre a solução da primavera para as dependências do BOM dos pacotes JAR. Espero que seja útil para todos. Amigos interessados podem continuar se referindo a outros tópicos relacionados neste site. Se houver alguma falha, deixe uma mensagem para apontá -la. Obrigado amigos pelo seu apoio para este site!