dependencies与dependencyManagement的区别

当我们的maven项目中的依赖过多时,为了更好的做版本管理,我们要创建一个父项目来管理这些依赖(这个父项目的打包方式为pom)

dependencies与dependencyManagement的区别:

  • 在父项目中的dependencies中定义的所有依赖,在子项目中都会直接继承,
  • 在父项目中的dependencyManagement中定义的所有依赖,子项目并不会继承,我们还要在子项目中引入我们需要的依赖,才能进行使用,但是,我们在子项目中不用设置版本.如下:

父项目

 <dependencyManagement>
        <dependencies>
    <!--这个要子项目引入才能使用-->
            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>fastjson</artifactId>
                <version>1.2.61</version>
            </dependency>
        </dependencies>
</dependencyManagement>

<dependencies>
<!--这个依赖,子项目一定会依赖,可以直接使用-->
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-lang3</artifactId>
            <version>3.8.1</version>
        </dependency>
</dependencies>

子项目

<!--什么也不写-->
    <dependencies>
    </dependencies>

我们在子项目中什么也没写,但是查看它们的依赖如下图:

但是当子项目中添加如下:

<!--添加一个fastjson-->
    <dependencies>
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
        </dependency>
    </dependencies>

原文地址:https://www.cnblogs.com/Lyn4ever/p/12094308.html

时间: 2024-11-08 23:09:50

dependencies与dependencyManagement的区别的相关文章

Maven实战(六)--- dependencies与dependencyManagement的区别

在上一个项目中遇到一些jar包冲突的问题,之后还有很多人分不清楚dependencies与dependencyManagement的区别,本篇文章将这些区别总结下来. 1.DepencyManagement应用场景 当我们的项目模块很多的时候,我们使用Maven管理项目非常方便,帮助我们管理构建.文档.报告.依赖.scms.发布.分发的方法.可以方便的编译代码.进行依赖管理.管理二进制库等等. 由于我们的模块很多,所以我们又抽象了一层,抽出一个itoo-base-parent来管理子项目的公共的

maven中的 dependencies 和 dependencyManagement 的区别

今天我在配置 sellercenter 的接口测试环境的时候,发现一些依赖的写法不太一致: 比如有的依赖的<scope>是写在子项目中的 <dependencies> 下的<dependency> 标签中, 而有的依赖的<scope>是写在父项目中的<dependencyManagement> 中 . 我知道前一种写法是对的,而后一种写法却不知道对不对了,从网上查了下,没有找到非常确切的答案,于是自己验证了一把. 把验证过程给大家说下,大家也可以

转】Maven实战(六)--- dependencies与dependencyManagement的区别

原博文出自于:http://blog.csdn.net/liutengteng130/article/details/46991829   感谢! 在上一个项目中遇到一些jar包冲突的问题,之后还有很多人分不清楚dependencies与dependencyManagement的区别,本篇文章将这些区别总结下来. 1.DepencyManagement应用场景 当我们的项目模块很多的时候,我们使用Maven管理项目非常方便,帮助我们管理构建.文档.报告.依赖.scms.发布.分发的方法.可以方便

maven中pom的继承以及dependencies与dependencyManagement的区别

https://blog.csdn.net/zzm3280/article/details/84952623 分类专栏: maven 本文转自:https://blog.csdn.net/liutengteng130/article/details/46991829 如有侵权马上删除在上一个项目中遇到一些jar包冲突的问题,之后还有很多人分不清楚dependencies与dependencyManagement的区别,本篇文章将这些区别总结下来. 1.DepencyManagement应用场景当

maven dependencies与dependencyManagement的区别

1.DepencyManagement应用场景 当我们的项目模块很多的时候,我们使用Maven管理项目非常方便,帮助我们管理构建.文档.报告.依赖.scms.发布.分发的方法.可以方便的编译代码.进行依赖管理.管理二进制库等等. 由于我们的模块很多,所以我们又抽象了一层,抽出一个itoo-base-parent来管理子项目的公共的依赖.为了项目的正确运行,必须让所有的子项目使用依赖项的统一版本,必须确保应用的各个项目的依赖项和版本一致,才能保证测试的和发布的是相同的结果. 在我们项目顶层的POM

Maven_dependencies 和 dependencyManagement 的区别

今天我在配置 sellercenter 的接口测试环境的时候,发现一些依赖的写法不太一致: 比如有的依赖的<scope>是写在子项目中的 <dependencies> 下的<dependency> 标签中, 而有的依赖的<scope>是写在父项目中的<dependencyManagement> 中 . 我知道前一种写法是对的,而后一种写法却不知道对不对了,从网上查了下,没有找到非常确切的答案,于是自己验证了一把. 把验证过程给大家说下,大家也可以

maven parent中的dependencies和dependencyManagement区别

首先,写一个maven parent <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"

nodejs的package.json依赖dependencies中 ^ 和 ~ 的区别

nodejs的package.json定义了一个模块,包括其依赖关系的一个简单的JSON文件,该文件可以包含多个不同的指令来告诉Node包管理器如何处理模块. dependencies则表示此模块依赖的模块和版本,其中常常可以看到类似 ^1.2.0 或 ~1.2.0 这样的版本范围指示. 首先,一个完整的版本号组表示为: [主要版本号,次要版本号,补丁版本号] 1. 用 ~ 指示范围 版本号中如果指定了主要版本.次要版本,则只允许补丁版本升级: 如果只指定了主要版本,则允许次要版本.补丁版本升级

npm package.json中的dependencies和devDependencies的区别

转载:http://www.cnblogs.com/jes_shaw/p/4497836.html 一个node package有两种依赖,一种是dependencies一种是devDependencies,其中前者依赖的项该是正常运行该包时所需要的依赖项,而后者则是开发的时候需要的依赖项,像一些进行单元测试之类的包. 如果你将包下载下来在包的根目录里运行 npm install 默认会安装两种依赖,如果你只是单纯的使用这个包而不需要进行一些改动测试之类的,可以使用 npm install --