浅谈Spring解决jar包依赖的bom
名词解释:
BOM(billofmaterials):材料清单,用于解决jar包依赖的好方法。
SpringIOPlatform
缘起:Spring起初只专注ioc和aop,现在已发展成一个庞大体系。比如security、mvc等。如此一来,不同模块或者与外部进行集成时,依赖处理就需要各自对应版本号。比如,较新spring与较老的quartz,它们集成就会遇到问题,给搭建和升级带来不便。因此SpringIOPlatform应运而生,只要项目中引入了它,外部集成时依赖关系无需版本号。官网的原文如下:“whenyoudodeclareadependencyonsomethingthat'spartofthePlatform,youwillnowbeabletoomittheversionnumber.”
举例如下:
< dependencies> < dependency> < groupId>org.springframework groupId> dependency> dependencies> 1 2 3 4 5
SpringIOPlatform只是一个pom文件,记录了spring与其他开源项目对应的版本。省去了版本号,也就省去了处理依赖时的问题,因为SpringIOPlatform中有最优的版本配置。
Spring相关的BOM
当然SpringSource为了解决这些Jar冲突,推出了各种BOM,当然最著名的就是springplatformiobom,其中最核心的三个是:spring-framework-bom、spring-boot-dependencies、platform-bom。
对于Spring工程来说,直接在pom.xml文件中添加如下配置代码,即可免去管理版本冲突的难题。
< dependencyManagement> < dependencies> < dependency> < groupId>org.springframework groupId> < artifactId>spring-framework-bom artifactId> < version>4.2.0.RELEASE version> < type>pom type> < scope>import scope> dependency> < dependency> < groupId>org.springframework.boot groupId> < artifactId>spring-boot-dependencies artifactId> < version>1.3.0.M2 version> < type>pom type> < scope>import scope> dependency> < dependency> < groupId>io.spring.platform groupId> < artifactId>platform-bom artifactId> < version>1.1.3.RELEASE version> < type>pom type> < scope>import scope> dependency> dependencies> dependencyManagement> 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
参考文章
Introductiontospringioplatform
总结
以上就是本文关于浅谈Spring解决jar包依赖的bom的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!