不使用parent POM的情况下玩转Spring Boot

 

可以参考: https://qbgbook.gitbooks.io/spring-boot-reference-guide-zh/content/III.%20Using%20Spring%20Boot/13.2.2.%20Using%20Spring%20Boot%20without%20the%20parent%20POM.html

 

 

如果你不想使用spring-boot-starter-parent,通过设置scope=import的依赖,你仍能获取到依赖管理的好处:

<dependencyManagement>
     <dependencies>
        <dependency>
            <!-- Import dependency management from Spring Boot -->
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-dependencies</artifactId>
            <version>1.4.1.BUILD-SNAPSHOT</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

 

自从maven 2.0.9,在<dependencyManagement>管理下的dependencies多了一种scope——import。

这种scope仅用于type为"pom"的dependency,其意义为引入该dependency的pom中定义的所有dependency定义。

 

1.在Maven中dependencyManagement的作用其实相当于一个对所依赖jar包进行版本管理的管理器。

 

2.pom.xml文件中,jar的版本判断的两种途径

1:如果dependencies里的dependency自己没有声明version元素,那么maven就

会倒dependencyManagement里面去找有没有对该artifactId和groupId进行过版本声明,如果有,就继承它,如果

没有就会报错,告诉你必须为dependency声明一个version

2:如果dependencies中的dependency声明了version,那么无论dependencyManagement中有无对该jar的version声明,都以dependency里的version为准。

 

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐