spring-boot pom.xml探究

一个spirng-boot的web项目
一、父项目spring-boot-starter-parent是做依赖管理的

    
        org.springframework.boot
        spring-boot-starter-parent
        1.5.20.BUILD-SNAPSHOT
         
    

它还依赖于一个父项目spring-boot-dependencies

    
        org.springframework.boot
        spring-boot-dependencies
        1.5.20.BUILD-SNAPSHOT
        ../../spring-boot-dependencies
    

spring-boot-dependencies项目才是真正管理springboot应用里面的所有依赖版本的项目,下面是它的properties配置。所以以后我们导入依赖默认是不需写版本的,而没有在dependencies里面管理的项目就需要声明版本号了。

    
        
        5.14.5
        2.7.7
        1.9.71
        1.5.6
        1.8.13
        2.6.0
        3.9.3
        2.1.4
        2.3.5
        3.1.4
        1.3.4
        1.9.3
        3.2.2
        1.10
        1.4
        2.1.1
        2.1
        1.6
        2.4.3
        2.3.7
        2.1.0
        1.3.2
        10.13.1.1
        1.6.1
        3.1.5
        2.10.5
        3.2.3
        1.50.5
        3.2.1
        2.3.28
        2.4.6
        8.2.13
        3.0.0
        2.9
        2.4.16
        2.8.5
        1.4.197
        1.3
        3.7.8
        3.7.1
        1.1.3
        5.0.12.Final
        5.3.6.Final
        2.5.1
        2.3.13
        2.4.13
        2.3.6
        2.21
        4.1.4
        4.5.6
        4.4.10
        8.2.11.Final
        2.8.11.20181123
        2.7.8
        3.21.0-GA 
        1.0.0
        1.5.6
        1.2
        1.1.0.Final
        1.1.6
        2.2.14
        3.3.2.Final
        7.6.0.Final
        2.0.6
        2.9.1
        2.25.1
        2.0.4
        9.4.14.v20181114
        2.2.0.v201112011158
        8.0.33
        1.1-rev-1
        1.13
        4.2.2
        2.9.9
        1.3.7
        3.9.6
        20140107
        1.4.0
        2.2.0
        1.2
        1.3.1
        4.12
        3.5.5
        2.7
        1.1.11
        1.16.22
        1.5.9
        6.1.0.jre7
        1.10.19
        3.4.3
        5.1.47
        5.5.34.Final
        1.9.22
        2.1.6
        9.4.1212.jre7
        4.1.4
        4.8.3
        2.0.8.RELEASE
        2.0.7.RELEASE
        2.53.1
        2.21
        2.2.2
        3.1.0
        1.1.1
        1.7.25
        1.17
        5.5.5
        1.0-groovy-2.4
        4.3.22.RELEASE
        1.7.12.RELEASE
        1.2.7.RELEASE
        3.0.10.RELEASE
        Ingalls-SR18
        0.23.0.RELEASE
        4.3.19.RELEASE
        1.2.3.RELEASE
        1.1.8.RELEASE
        2.3.2.RELEASE
        1.2.8.RELEASE
        1.1.5.RELEASE
        1.2.0.RELEASE
        1.1.3.RELEASE
        1.2.3.RELEASE
        4.2.11.RELEASE
        1.0.9.RELEASE
        2.0.16.RELEASE
        1.3.5.RELEASE
        1.1.6.RELEASE
        2.0.3.RELEASE
        1.0.2.RELEASE
        1.1.2.RELEASE
        2.4.4.RELEASE
        3.15.1
        3.1.0
        ${javax-mail.version}
        2.1.6.RELEASE
        2.1.3.RELEASE
        2.1.2.RELEASE
        1.4.0
        1.3
        2.1.0.RELEASE
        8.5.37
        1.4.26.Final
        3.2.1
        9f96c74
        0.32-1
        1.6.3
        1.4.01
        
        1.10
        1.5.0
        2.2.6
        1.8
        2.6
        2.6.1
        3.1
        2.10
        2.8.2
        2.10
        1.4.1
        2.18.1
        2.5.2
        1.10
        2.2
        2.6
        2.10.4
        2.7
        2.4.3
        3.5.1
        2.4
        2.18.1
        2.6
        2.2
    

二、导入的依赖spring-boot-starter-web

        
            org.springframework.boot
            spring-boot-starter-web
        

spring-boot-starter叫做spring-boot场景启动器
spring-boot-starter-web依赖了如下关键的项目,它帮我们导入了web模块正常运行所需要的组件

            
            
                org.springframework.boot
                spring-boot
                1.5.20.BUILD-SNAPSHOT
            
            
            
                org.apache.tomcat.embed
                tomcat-embed-core
                ${tomcat.version}
            
            
            
                com.fasterxml.jackson
                jackson-bom
                ${jackson.version}
                import
                pom
            
            
            
                io.projectreactor.spring
                reactor-spring-webmvc
                ${reactor-spring.version}
            

starters是一系列依赖描述的组合,spring-boot将所有的功能场景全部抽取出来,做成一个一个的starter(启动器),只需要在项目里面引用这些starter的相关场景,所有依赖都会导入进来,版本由springboot自动控制,要用什么功能就导入什么场景的启动器。

你可能感兴趣的:(spring-boot pom.xml探究)