spring boot是如何通过maven实现起步依赖模块
1、为了演示,首先需要创建一个spring boot的项目,这里不做创建项目的说明了,如图所示,打开pom.xml文件,以依赖的web模块为例,在依赖地方可以看到,只有spring-boot-starter-web就可以拥有web项目相关的所有依赖文件了
2、展开项目文件最下方的External Libraries,可以看到已经依赖了大量的web相关的jar文件进来了
3、打开mavne Project窗口,展开spring-boot-starter-web的依赖节点,下级节点则是通过spring-boot-starter-web依赖进来的
4、这个时候你可能会奇怪为啥spring-boot-starter-web依赖的时候没有填写版本号就可以依赖那么多web相庙堠杼寺关的文件进来了,和我们平时添加的maven依赖不太一样,那是因为我们创建的项目是通过maven继承spring-boot-starter-parent的,如图所示查看pom.xml的parent节点
5、按住Ctrl的同时,点击鼠标左键进入到spring-boot-starter-parent的pom.xml文件,同时发现它还继承spring-boot-dependencies,这个则是spring boot所有的依赖具体列表位置
6、按住Ctrl的同时,点击鼠标左键进入spring-boot-dependencies的pom.xml文件,在这个文件中找到,<dependencyManagement>,此处就是所有的具体依赖描述节点,搜索spring-boot-starter-web可以看到如图所示的依赖描述节点,这里是可以看到具体的version版本号的
7、再次跳转到spring-boot-starter-web的pom.xml文件,则可以看到web的间接依赖jar文件了
8、这么多的模块依赖文件,则是通过maven的继承结构来帮助我们从spring boot的父文件中继承而来,然后通过间接依赖的方式,把相关的依赖一并依赖进来。这样我们只需要依赖spring-boot-starter-web而不需要写版本就可以完成了