5.4 依赖的配置
5.3.1节已经罗列了一些简单的依赖配置,读者可以看到依赖会有基本的groupId、arti-factId和version等元素组成。其实一个依赖声明可以包含如下的一些元素:
<project>
……
<dependencies>
<dependency>
<groupId>……</groupId>
<artifactId>……</artifactId>
<version>……</version>
<type>……</type>
<scope>……</scope>
<optional>……</optional>
<exclusions>
<exclusion>
……
</exclusion>
……
</exclusions>
</dependency>
……
</dependencies>
……
</project>
根元素project下的dependencies可以包含一个或者多个dependency元素,以声明一个或者多个项目依赖。每个依赖可以包含的元素有:
groupId、artifactId和version:依赖的基本坐标,对于任何一个依赖来说,基本坐标是最重要的,Maven根据坐标才能找到需要的依赖。
type:依赖的类型,对应于项目坐标定义的packaging。大部分情况下,该元素不必声明,其默认值为jar。
scope:依赖的范围,见5.5节。
optional:标记依赖是否可选,见5.8节。
exclusions:用来排除传递性依赖,见5.9.1节。
大部分依赖声明只包含基本坐标,然而在一些特殊情况下,其他元素至关重要。本章下面的小节会对它们的原理和使用方式详细介绍。