• Maven 中 dependencyManagement 干嘛用的


    首先我么都知道Maven是用来管理jar包的,最常见的就是

    dependencies,下面有  groupId,artifactId,version 3个属性
      <!--
          导入依赖,最常见的
          groupId,artifactId,version
      -->
      <dependencies>
        <dependency>
          <groupId>org.springframework</groupId>
          <artifactId>spring-context</artifactId>
          <version>5.2.2.RELEASE</version>
        </dependency>
      </dependencies>

    还有一种情况,你可能会碰到,就是没有版本号

    dependencies,下面有  groupId,artifactId, 2个属性
      <!--
          只有,没有版本号
          groupId,artifactId
      -->
      <dependencies>
        <dependency>
          <groupId>org.springframework</groupId>
          <artifactId>spring-context</artifactId>
        </dependency>
      </dependencies>
    
    </project>

    那么问题来了,没有版本号,那么Maven怎么知道下载哪个版本?

    那么Maven肯定不会下载  spring-context 对应的jar包,在Maven下Dependencis会报红色的波浪线。


    我们来看看 dependencyManagement 
    首先要了解:  dependencyManagement   和  dependencies 区别
    dependencies :会从仓库下载指定的jar包
    dependencyManagement : 不会下载jar包,就是个描述,声明,不会从仓库下载

    maven怎么知道下载哪个版本,有2种途径:
     
     1. 就是你在 dependencies 指定 <version>
    2. 当 dependencies 没有 <version> ,就去 dependencyManagement 查找指定的 <version>

    注意:如果dependencies中的dependency声明了version,那么无论dependencyManagement中有无对该jar的version声明,
    都以dependency里的version为准
    <!--指定版本号-->
      <dependencyManagement>
         <dependencies>
           <dependency>
             <groupId>org.springframework</groupId>
             <artifactId>spring-context</artifactId>
             <version>5.5.2.RELEASE</version>
           </dependency>
         </dependencies>
      </dependencyManagement>
    
      <!--
          只有,没有版本号 groupId,artifactId
          到  <dependencyManagement> 去找
      -->
      <dependencies>
        <dependency>
          <groupId>org.springframework</groupId>
          <artifactId>spring-context</artifactId>
        </dependency>
      </dependencies>
     
  • 相关阅读:
    oracle_深刻理解数据库的启动和关闭
    oracle_利用闪回功能恢复数据
    oracle_五千万数据插入测试
    java_eclipse_svn 与服务器同步时 ,忽略某类型文件和文件夹
    oracle_根据表名拼装语句
    crawler_网络爬虫之数据分析_httpwatcher
    113. Path Sum II (Tree; DFS)
    112. Path Sum (Tree; DFS)
    150. Evaluate Reverse Polish Notation (Stack)
    32. Longest Valid Parentheses (Stack; DP)
  • 原文地址:https://www.cnblogs.com/codelives/p/13220982.html
Copyright © 2020-2023  润新知