zoukankan      html  css  js  c++  java
  • 【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类似。

  • 相关阅读:
    js键盘事件以及键盘事件拦截
    GO-&获取地址与*解引用
    Go-map
    第22课
    第21课
    第20课
    基于spring+quartz的分布式定时任务框架
    DeepLearning (三) 预处理:主成分分析与白化
    白化whitening
    如何使用RestTemplate访问restful服务
  • 原文地址:https://www.cnblogs.com/zhoulitong/p/6412302.html
Copyright © 2011-2022 走看看