springboot的maven配置依赖详解
本⽂介绍了spring boot的maven配置依赖详解,分享给⼤家,具体如下:
我们通过引⽤spring-boot-starter-parent,添加spring-boot-starter-web
可以实现web项⽬的功能,当然不使⽤spring-boot-start-web,通过⾃⼰添加的依赖包也可以实现,但是需要⼀个个添加,费时费⼒,⽽且可能产⽣版本依赖冲突。我们来看下springboot的依赖配置:
利⽤pom的继承,⼀处声明,处处使⽤。在最顶级的spring-boot-dependencies中,使⽤dependencyManagement让所有⼦项⽬引⽤⼀个依赖⽽不⽤显式的列出版本号,将结构信息,部署信息,共同的依赖信息放置在统⼀的位置。dependencyManagement只声明依赖,并不真正引⼊,因此⼦项⽬需要通过dependencies引⼊相关依赖。
1)spring-boot-dependencies组成:
第三⽅依赖的版本号
restful接口详解插件的版本号
springboot的依赖包,固定版本的parent依赖固定版本包,如果升级只需修改parent的版本号,即可统⼀更换依赖。
\
第三⽅依赖,解决了第三⽅依赖版本不兼容的冲突,使⽤第三⽅依赖更加便捷
插件
2)spring-boot-parent组成:
添加额外的依赖,⽤户会使⽤的第三⽅依赖,但是spring-boot-dependencies中没有依赖
测试相关的依赖
以及其他插件及profile配置
3)spring-boot-starter-parent组成:
⽗级spring-boot-dependencies⽆需多说
依赖spring-core
在src/main/resources⽬录下,仅l和application.properties是资源⽂件并需要进⾏过滤;在src/main/resources下除l和application.properties外也是资源⽂件,但不需要过滤。过滤会将⽂件中${...}替换为系统属性或者项⽬属性值。
4)sprint-boot-starter-*
可以通过parent来统⼀管理,这也就是springboot的四⼤神器之⼀的starter所带来的便捷。根据不同的功能,添加不同的starter 即可。在springboot源码包中我们可以看到spring-boot-starters中有50多个starter
图中根⽬录l为spring-boot-starters,使⽤maven的聚合模块,其他starter作为聚合模块的⼦⽬录存在,⽬的是⼀次构建多个项⽬模块,如下图:
通过models来管理所有的starter,可以⼀次性构建所有starter:
使⽤assembly插件,将⼀组⽂件、⽬录、依赖元素组装成⼀个归档⽂件,如下图:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论