dependencies 配置节,主要用于配置项目依赖的其他包,其子节点 dependency 用来配置具体依赖包,有groupId、artifactId、version、scope等子节点来说明,配置节结构如下:

<dependencies>

      <dependency>

            <groupId>这个应该是公司名或组织名或项目归属组</groupId>

            <artifactId>构建出来的文件名,一般来说或,这个也是project名</artifactId>

            <version>版本号</version>

            <scope>依赖的范围</scope>

            <type>依赖的类型,默认值:jar</type>

            <optional>依赖是否可选(值为
true

false)</optional>

              <!-- 用来排除传递性依赖 -->

            <exclusions>

<exclusion>

<groupId>项目归属组</groupId>

<artifactId>项目在组中唯一ID</artifactId>

</exclusion>

            </exclusions>

</dependency>

  • 子节点
    scope:用于配置和依赖包的范围,范围值有
    compile、test、runtime、provided、system
    • compile:编译依赖范围,如果没有指定,就会默认使用该依赖范围,使用此依赖范围,对于编译、测试、运行三种有效
    • test:测试依赖范围,使用此依赖范围,对于测试有效
    • provided:已提供依赖范围,使用此依赖的范围,对于编译和测试有效
    • runtime:运行时依赖,使用此依赖的范围,对于测试和运行有效
    • system:系统依赖范围,使用此依赖的范围,对于编译和测试有效,但必须通过
      systemPath 元素显示的指定依赖文件的路径(可以引用环境变量,必须 ${java.home} 表示 JAVA_HOME 环境变量)
    • import:导入依赖范围,不会对
      编译、测试和运行有实际的影响

Maven 会自动解析所有项目的直接依赖和传递性依赖,并根据果汁正确判断每个依赖的范围,对于一些依赖冲突,也能进行调节,以确保任何一个构建只有唯一的版本在依赖中存在,这些工作之后,最后得到的依赖被称为已解析依赖(Resolved
Dependency),可以运行如下的命令查看当前项目的已解析依赖:

mvn dependency:list

命令结果:

可以通过命令查看当前项目的依赖树:

mvn dependency:tree

命令结果:

需要需要分析依赖的情况,可以使用命令:

mvn dependency:analyze

命令结果:

结果分为二部分:

  • Used undeclared dependencies:表示项目中使用到的,但时没有显示声明的依赖
  • Unused declared dependencies:表示项目中未使用的,但显示声明的依赖,需要注意,对于这一类的依赖,我们不应该简单的直接删除其声明,该命令只会分析编译、测试需要用到的依赖,一些执行运行时需要的依赖无法发现。

笔记:Maven 依赖及配置详解的更多相关文章

  1. 学习笔记——Maven settings.xml 配置详解

    文件存放位置 全局配置: ${M2_HOME}/conf/settings.xml 用户配置: ${user.home}/.m2/settings.xml note:用户配置优先于全局配置.${use ...

  2. 学习笔记——Maven pom.xml配置详解

    POM的全称是“ProjectObjectModel(项目对象模型)”. pom.xml详解 声明规范 <projectxmlns="http://maven.apache.org/P ...

  3. maven常用插件配置详解

    常用插件配置详解Java代码    <!-- 全局属性配置 --> <properties> <project.build.name>tools</proje ...

  4. 【转】Maven pom.xml 配置详解

    原文链接:https://yq.aliyun.com/articles/38271 pom.xml文件配置详解 --声明规范 <project xmlns="http://maven. ...

  5. Maven settings.xml配置详解

    首先:Maven中央仓库的搜索全部公共jar包的地址是,http://search.maven.org/ ===Maven基础-默认中央仓库============================== ...

  6. 【Maven学习】maven中依赖的配置详解

    根元素project下的dependencies可以包含一个或者多个dependency元素,以声明一个或多个项目依赖.每个依赖可以包含的元素有: groupId,artifactId和version ...

  7. (转)Maven pom.xml 配置详解

    背景:maven一直感觉既熟悉又陌生,归根结底还是自己不太熟. 1 什么是pom? pom作为项目对象模型.通过xml表示maven项目,使用pom.xml来实现.主要描述了项目:包括配置文件:开发者 ...

  8. Maven(四-2) Maven pom.xml 配置详解

    转载于:http://niuzhenxin.iteye.com/blog/2042102 什么是pom?    pom作为项目对象模型.通过xml表示maven项目,使用pom.xml来实现.主要描述 ...

  9. Nginx-安装依赖及配置详解

    依赖 在安装Nginx之前, 需确保系统已经安装了gcc. openssl-devel. pcre-devel和zlib-devel软件库 配置 Nginx的配置文件nginx.conf位于其安装目录 ...

随机推荐

  1. eclipse web and java ee development

    1.打开Eclipse ->help ->install new software 2.Work with:http://download.eclipse.org/releases/gan ...

  2. 如何更改Ubuntu的root密码

    安装Ubuntu系统时,只提示了设定用户密码,该密码可用于普通用户暂时获取root的权限,执行一些需要root权限的操作,而没有要求我们设置root密码,在需要用到root密码时,却想不起来,很尴尬啊 ...

  3. 第5章 PCIe总线的事务层

    事务层是PCIe总线层次结构的最高层,该层次将接收PCIe设备核心层的数据请求,并将其转换为PCIe总线事务,PCIe总线使用的这些总线事务在TLP头中定义.PCIe总线继承了PCI/PCI-X总线的 ...

  4. WebService之CXF注解报错(二)

    WebService之CXF注解 1.具体报错如下 五月 04, 2014 11:24:12 下午 org.apache.cxf.wsdl.service.factory.ReflectionServ ...

  5. OpenStack_I版 6.Neutron部署

    Neutron是不能自己创建网络的,它需要借助插件才能创建虚拟网桥.网卡 依赖插件 配置ml2为核心插件 本次网络模型采用扁平化网络,不同的网络类型不同的配置,不同的使用方法 打开安全组功能 Linu ...

  6. hihocoder Challenge 29 B.快速乘法

    这题的题解和我写的有一拼,异常简洁,爆炸. 这题思路dp 表示的是讨论到第位,并比原数的前n位多了 显然j只能取0,1,毕竟2进制嘛 之后转移就好了,注意下面两个重要状态 #include <c ...

  7. IOS开发之XCode学习013:步进器和分栏控件

    此文学习来源为:http://study.163.com/course/introduction/1002858003.htm 此工程文件实现功能:  1.定义UIStepper和UISegmente ...

  8. java中垃圾回收机制和引用类型

    在java中JDK1.2版本以后,对象的引用类型分为四种,从高到低依次为:强引用.软引用.弱引用.虚引用. ①强引用的特点:垃圾回收机制绝不会回收它,即使内存不足时,JVM宁愿抛出OutOfMemor ...

  9. C++标准库bitset类型(简单使用方法)

    转自此人博客 ```cpp #include<bister> using std::bitset; ``` 一句话定义:可自定义位数,用作记录二进制的数据类型. 一,定义和初始化 ```c ...

  10. 【USACO09OCT】热浪Heat Wave

    题目描述 The good folks in Texas are having a heatwave this summer. Their Texas Longhorn cows make for g ...