zoukankan      html  css  js  c++  java
  • Maven中dependencies和dependencyManagement的区别

    Maven项目中,为了保持引用依赖的一致性,一般会抽出一个parent层,用来管理子项目的maven依赖,对于依赖的管理有两种方式,分别是dependencies以及dependencyManagement,那么这两者有什么区别呢?

    区别

    两者都可以引入maven依赖,但是主要的区别有以下几点:

    • dependencyManagement引入的依赖在子项目中不会自动引入

    使用dependencyManagement在parent中引入的依赖只是对依赖进行了一个声明,在子项目中需要使用相应的依赖时还是需要再次引入依赖的。

    • dependencies引入的依赖在子项目中会自动引入

    使用dependencies引入的依赖,在子项目中会自动引入依赖,即使不在pom中声明依赖,子项目也会自动引入parent中声明的依赖。

    • dependencyManagement引入的依赖,子类可以对版本进行覆盖

    dependencyManagement引入的依赖,在子类中进行声明时,可以不写版本号,此时会自动继承父类的版本号,但是如果需要定义一个新的版本,那么需要写上新的版本号,此时就会覆盖父类的版本。

    优点

    使用dependencyManagement管理maven依赖可以有以下几个优点:

    • 统一管理依赖版本以及作用域等,升级或者切换都比较方便;
    • 子类可以根据需要从父类中继承相应的jar包,而不是引入父类中所有的jar包;
    • 子类继承依赖时,不需要定义版本号和作用域。
  • 相关阅读:
    【t090】吉祥数
    【u221】分数
    【u212】&&【t036】最大和
    【u125】最大子树和
    【u124】环状最大两段子段和
    【u123】最大子段和
    【u122】迎接仪式
    【u121】教主的花园
    【u118】日志分析
    【u117】队列安排
  • 原文地址:https://www.cnblogs.com/ybyn/p/13690781.html
Copyright © 2011-2022 走看看