• 【maven】---pom.xml-dependencies


    前言

        Maven在做项目开发的时候,需要用到多个jar包,这个时候,maven提供的中央仓库,就会根据依赖项,自动download需要的jar包,自动引用到项目中。

    内容

        具体依赖配置,集中在pom.xml配置文件中。

    DEMO

    <dependency>
     <groupId>org.zlt.user</groupId>
     <artifactId>user-log</artifactId>
     <version>0.0.1-SNAPSHOT</version>
     <type>jar</type>
     <scope>compile</scope>
     <!-- 排除一些版本包 -->
     <exclusions>
      <exclusion>
         <groupId>log4j</groupId>
         <artifactId>log4j</artifactId>
      </exclusion>
     </exclusions>
    </dependency>

        上面的是一个maven项目,项目packageorg.zlt.user,项目名称为user-log,该项目的版本号为0.0.1-SNAPSHOT,项目依赖范围为jar。依赖范围为compile。排除了log4j包。

    每个依赖包含的参数为:

    • GroupIdartifactIdversion:依赖的基本坐标,对于任何一个依赖来说,基本坐标是最重要的,maven根据坐标才能找到需要的依赖。
    • Type:依赖的类型,对应于项目坐标定义的packaging。大部分情况下,该元素不必声明,默认值为jar。(若为了一起打包,起到聚合作用,那么该依赖类型为pom

    • Scope:依赖的范围

    依赖范围

    Scope

    对于编译classpath有效

    对于测试classpath有效

    对于运行时classpath有效

    例子

    Compile

    Y

    Y

    Y

    Spring-core

    Test

    Y

    JUnit

    Provided

    Y

    Y

    Servlet-api

    Runtime

    Y

    Y

    JDBC驱动实现

    System

    Y

    Y

    本地的,maven仓库职位的类库文件


    1、
    a->b1.0项目之间的依赖关系:

          c->b1.1

          d->ac

          这个时候在dpom中,哪一个依赖先写就使用先写的依赖的版本。

    2a->1.0

          c->b1.1

          d->ac->b1.0

          f->d,c

          如果路径的长短不一致就选择最小路径。

    注意:如果希望精确的控制依赖包,可以使用依赖的排除功能进行控制(<exclusions>)。

    • exclusions:用来排除传递性依赖。

    小结

        其实上面的依赖就和咱们平时的项目import类似。

  • 相关阅读:
    C语言成长学习题(八)
    C语言成长学习题(七)
    C语言成长学习题(六)
    C语言成长学习题(五)
    Linux下zookeeper下载与安装教程
    Linux下mongoDB下载与安装
    并发容器之阻塞队列DelayQueue的使用案例及源码分析
    原子操作CAS-最小的线程安全
    ThreadLocal定义、使用案例及源码分析
    mac上使用git命令上传项目工程源码至Github/gitee
  • 原文地址:https://www.cnblogs.com/zhoulitong/p/6412302.html
Copyright © 2020-2023  润新知