pom.xml 中依赖管理标签的用途是什么?

ram*_*ria 0 dependencies dependency-management pom.xml maven spring-boot

有人可以解释一下这个依赖项在依赖项管理下的作用以及添加它后为什么我们不需要提及依赖项的版本吗?

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>${spring-cloud.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>


    <dependencies>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
        </dependency>
    </dependencies>
Run Code Online (Sandbox Code Playgroud)

Col*_*lon 6

  • dependencyManagement使它们可用,但您需要将它们导入到您希望将它们加载到的每个子模块中。用作版本控制,并避免在每个模块或子项目中加载所有依赖项而导致项目臃肿。

  • 依赖项会为继承它们的每个模块或子项加载它们。