Maven的依赖
1.5.6Maven的依赖
Maven的核心特征就是依赖管理。 Maven通过读取依赖项项目文件(pom.xml中),找出它们的依赖等。
我们只需要在每个项目POM定义直接依赖关系。 Maven自动处理其余部分。
传递依赖,包括库的图形可能会快速增长在很大程度上。可能出现情况下,当有重复的库。 Maven提供一些功能来控制传递依赖程度
Maven项目我们一般是在IDea软件中创建的,我们只需要在pom.xml中添加对应jar包的Maven节点就可以使用jar包,节点我们可以在Maven中查找。
相对比我们之前用的软件MyEclipse软件 就拿Spring框架做对比的话,我们
可以少
可是在pom.xml中我们只需要几个节点就好了。
依赖元素:
groupId,必选,实际隶属项目
artifactId,必选,其中的模块
version必选,版本号
type可选,依赖类型,默认jar
scope可选,依赖范围,默认compile
optional可选,标记依赖是否可选,默认false
exclusion可选,排除传递依赖性,默认空
依赖范围:
maven项目又三种classpath(编译,测试,运行)
scope用来表示与classpath的关系,总共有五种:::
1.compile:编译依赖范围,默认使用该范围。编译、测试、运行都有效
2.test:测试依赖范围。支队测试的classpath有效。例如Junit,greenMail。
3.provided:对编译和测试有效,对运行无效,常用于容器提供了的运行环境。例如servlet-api,容器以提供,所以只需要编译和测试有效即可。
4.runtime:运行时依赖范围。例如jdbc驱动,编译和测试并不需要,只需要使用JDK提供的JDBC接口即可。
5.system:系统依赖范围,依赖Maven仓库意外的依赖。
依赖版本界限
要求的依赖版本>=3.8且<4.0
<version>[3.8,4.0)</version>
依赖冲突的调解
有两个原则,第一原则是路径短优先原则,第二原则是先声明者优先