Maven的作用:
1.依赖管理:改变传统的jar包管理方式,一个或多个项目只需要配置一个文件即可实现jar包的依赖。
2.项目构建:采用统一轻便的方式构建管理项目,通过简单的命令帮助完成复杂的清理,编译,测试运行等项目的生命周期管理

Maven管理项目的周期:

aspect依赖包maven maven依赖是什么意思_maven


Maven的仓库就是用来存放项目所需要的jar包和插件的 ,再简单的说,仓库就是为了存放管理jar包的。

Maven相关名词解释(预备知识)

Project:Maven创建的工程项目,这些工程被定义为工程对象模型(POM:Poject Object Model). 一个工程可以依赖其他的工程,可以由多个子工程构成

POM:POM(pom.xml)是Maven项目的核心配置文件,它是指示Maven如何工作的元数据文件,比如该项目都依赖了哪些其他项目,POM文件位于每个工程的根目录中.

GroupId:是一个工程在全局中唯一的标识符,好比是一家公司的名称,是工程完整的一个包路径,如: cn.itcast.maven,用以区分不同的工程.

ArtifactId:创建的工程,比如:demo ,每个artifact都由groupId(cn.itcast.maven)和artifactId(demo)组成的唯一标识如(cn.itcast.maven.demo)

ArtifactId:创建的工程,比如:demo ,每个artifact都由groupId(cn.itcast.maven)和artifactId(demo)组成的唯一标识如(cn.itcast.maven.demo)

Maven传递依赖冲突

在pom.xml中我们只配置了一个struts-core的jar包,它会自动将struts2-core包的其他相关依赖jar包进行关联,这种关联就称为依赖传递

.Maven自身的冲突调节原则:.1.第一声明者优先原则(根据依赖的配置顺序,谁先声明就用谁的依赖:);2.路径近者优先原则(直接依赖的级别要比传递依赖优先:);3.排除依赖(将重复的依赖通过exclude Maven Artfact… 排除解决,只保留唯一依赖:);4.版本绑定(推荐)通过配置dependencyManagement标签指定使用依赖的版本(注意: 版本锁定只是锁定了依赖的版本,并没有导入jar包.)