目录
一. Maven概述
1.1 Maven是什么
1.2 Maven的作用
1.2.1 项目构建
1.2.2 依赖管理
1.2.3 统一项目结构
1.3 Maven模型
1.3.1 插件
1.3.2 项目对象模型
1.3.3 依赖管理模型
二. Maven基础概念
2.1 仓库:
2.2 仓库分类
2.2.2 远程仓库(私服)
中央仓库
2.3 Maven中的坐标
2.3.1 什么是坐标
2.3.2 Maven坐标的主要组成
2.3.3 Maven坐标的作用
2.4 生命周期
2.4.1 项目构建生命周期
2.4.2 注意
三.Maven的下载安装与配置
3.1 Maven下载
3.2 Maven安装
3.3 Maven环境变量配置
3.4 maven仓库配置
3.4.1 本地仓库配置(默认位置在c盘)
3.4.2 远程仓库配置(默认是国外的位置)
3.4.3 全局Setting和用户Setting的区别
一. Maven概述
1.1 Maven是什么
Maven是一个项目管理工具,将项目开发和管理过程抽象成一个项目对象模型(POM)。
1.2 Maven的作用
1.2.1 项目构建
提供了一套标准化的构建流程(编译,测试,打包,发布……)。
解释说明:
如上图所示我们开发了一套系统,代码需要进行编译、测试、打包、发布,这些操作如果需要反复进行就显得特别麻烦,而 Maven提供了一套简单的命令来完成项目构建。
1.2.2 依赖管理
对项目所依赖的资源(jar包)进行管理,避免资源间的版本冲突问题。
解释说明:
Maven使用标准的 坐标 配置来管理各种依赖,只需要简单的配置就可以完成依赖管理。
如上图右边所示就是mysql驱动包的坐标,在项目中只需要写这段配置,其他都不需要我们担心,Maven都帮我们进行操作 了。
1.2.3 统一项目结构
提供标准的,统一的项目结构。
解释说明:
项目结构我们都知道,每一个开发工具(IDE)都有自己不同的项目结构,它们互相之间不通用。我在eclipse中创建的目录,无法在idea中进行使用,这就造成了很大的不方便,如下图:前两个也是以后开发经常使用的开发工具
而Maven提供了一套标准化的项目结构,所有的IDE使用Maven构建的项目完全一样,所以IDE创建的Maven项目可以通用。 如下图右边就是Maven构建的项目结构。
1.3 Maven模型
1.3.1 插件
如上图所示就是Maven的模型,而我们先看紫色框框起来的部分,他就是用来完成标准化构建流程 。如我们需要编译, Maven提供了一个编译插件供我们使用,我们需要打包,Maven就提供了一个打包插件提供我们使用等 。
1.3.2 项目对象模型
上图中紫色框起来的部分,项目对象模型就是将我们自己抽象成一个对象模型,有自己专属的坐标,如下图所示是一个 Maven项目:
1.3.3 依赖管理模型
依赖管理模型则是使用坐标来描述当前项目依赖哪些第三方jar包,如下图所示 :
上述Maven模型图中还有一部分是仓库。如何理解仓库呢?见 二.Maven基础概念
二. Maven基础概念
2.1 仓库:
用于存储各种资源,包含各种jar包。
2.2 仓库分类
Maven中的仓库分为本地仓库、远程仓库、中央仓库
2.2.1 本地仓库
自己电脑上存储资源的仓库,连接远程仓库获取资源。
2.2.2 远程仓库(私服)
一般由公司团队搭建的私有仓库 。
私服的作用:
1.因为
中央仓库中的jar都是开源的,不能存取具有版权的资源。所以私服能够
保存具有版权的资源,包含购买或自主研发的jar包。
2.一定范围内共享资源,仅对内部开放不对外共享。
Note:远程仓库一般指的就是中央仓库或者阿里云等镜像仓库,私服的存在是为了让多个程序员共享一个仓库里的资源。
中央仓库
Maven团队维护,存储所有资源的仓库。
2.3 Maven中的坐标
2.3.1 什么是坐标
Maven中的坐标用于描述仓库中资源的位置。
2.3.2 Maven坐标的主要组成
groupId:当前Maven项目隶属的组织名称。
artifactId:定义当前Maven项目名称。
version:定义当前项目版本号。
packaging:定义该项目的打包方式。
2.3.3 Maven坐标的作用
具有唯一标识,能唯一定位资源位置,通过该标识可以将资源的识别与下载工作交由机器完成。
2.4 生命周期
2.4.1 项目构建生命周期
Maven构建生命周期描述的是一次构建过程经历了多少个事件。
Maven对项目构建的生命周期划分为3套:
1. clear:清理工作
2. default:核心工作,例如编译,测试,打包,部署等
3. site:产生报告,发布站点等。 这套生命周期一般不会使用。
2.4.2 注意
同一套生命周期内,执行后边的命令,前面的所有命令会自动执行。
三.Maven的下载安装与配置
3.1 Maven下载
从官网http://
maven.apache.org
下载。
3.2 Maven安装
Maven属于绿色版软件,解压即安装。
3.3 Maven环境变量配置
1.依赖JAVA,需要配置JAVA_HOME,然后在path路径下配置%JAVA_HOME%\bin。
2.设置Maven自身的运行环境需要配置MAVEN_HOME,然后在path路径下配置%MAVEN_HOME%\bin。
3.在dos里输入mvn -version,测试环境配置结果。
3.4 maven仓库配置
3.4.1 本地仓库配置(默认位置在c盘)
在Maven/conf文件夹下的setting.xml文件中通过书写
<localRepository>E:\maven\repository</localRepository>配置本地仓库。
3.4.2 远程仓库配置(默认是国外的位置)
在Maven/conf文件夹下的setting.xml文件中
配置阿里云镜像仓库
</mirrors>
<mirror>
<!--此镜像的唯一标识符,用来区分不同的mirror元素 -->
<id>nexus-aliyun</id>
<!--对哪种仓库进行镜像,简单说就是替代哪个仓库-->
<mirrorOf>central</mirrorOf>
<!--镜像名称-->
<name>Nexus aliyun</name>
<!--镜像URL -->
<url>
http://maven.aliyun.com/nexus/content/groups/public
</url>
</mirror>
</mirrors>
3.4.3 全局Setting和用户Setting的区别
全局Setting定义了当前计算机中Maven的公共配置,用户Setting定义了当前用户的配置。