一,什么是Maven?
Maven是 一个项目管理工具,它包含了一个项目对象模型,一组标准集合,一个项目生命周期,一个依赖管理系统和用来运行定义在生命周期阶段中插件目标逻辑 。
Maven的本质是一个项目管理工具,将项目开发和管理过哦从抽象成一个项目对象模型。
二,Maven的作用
提供标准的,跨平台的自动化项目构建方式(统一开发结构)
三,Maven的使用
1,下载(选择需要的版本)
官方地址:http://maven.apache.org/
2,解压
解压后目录结构如下:
bin:存放了maven 的命令,比如我们前面用到的 mvn tomcat:run
boot:存放了一些 maven 本身的引导程序,如类加载器等
conf:存放了 maven 的一些配置文件,如 setting.xml 文件
lib:存放了 maven 本身运行所需的一些 jar 包
四,配置JDK
使用JDK8版本、
五,配置Maven
配置 MAVEN_HOME ,变量值就是你的 maven 安装 的路径(bin 目录之前一级目录)
上面配置了我们的 Maven 软件,注意这个目录就是之前你解压 maven 的压缩文件包在的的目录,最 好不要有中文和空格,其次打开path环境变量在value后面添加:%MAVEN_HOME%\bin
Maven 软件版本测试 通过 mvn -v命令检查 maven 是否安装成功
通过mvn指令完成初始化,可在默认磁盘生成隐藏文件夹.m2 作为本地仓库
关于Maven的一些基本概念
1,仓库
作用:用于存储资源,包含各种jar包;
2,Maven仓库的分类:
①本地仓库:存储从远程仓库或中央仓库下载的插件和 jar 包,项目使用一些插件或 jar 包优先从本 地仓库 查找默认本地仓库位置在 ${user.dir}/.m2/repository,${user.dir}表示 windows 用户目录
②远程仓库
2.1中央仓库:服务于整个互联网,它是由 Maven 团队自己维护,里面存储了非常全的 jar 包它包含了世界上大部分流行的开源项目构件。
2.2私服:部门/公司范围内存储资源的仓库,从中央仓库获取资源
保存具有版权的资源,包含购买或自主研发的jar,定范围内共享资源,仅对内部开放,不对外共享。
3,坐标
作用:Maven中的坐标用于描述仓库中资源的位置,使用唯一标识,唯一性定位资源位置,通过该标识可以将资源的识别与下载工作交由机器完 成
坐标的注意组成:
Maven坐标主要组成 groupld:定义当前Maven项目隶属组织名称(通常是域名反写,例如: org.mybatis)
artifactld:定义当前Maven项目名称(通常是模块名称,例如CRM、SMS)
version:定义当前项目版本号
packaging:定义该项目的打包方式
六,仓库配置
七,IDEA绑定
八,依赖管理
依赖传递冲突问题
路径优先:当依赖中出现相同的资源时,层级越深,优先级越低,层级越浅,优先级越高
声明优先:当资源在相同层级被依赖时,配置顺序靠前的覆盖配置顺序靠后的
特殊优先:当同级配置了相同资源的不同版本,后配置的覆盖先配置的