wxiao个人技术分享 wxiao的技术分享

Maven概述

⚠️ 本文最后更新于2024年08月16日,已经过了287天没有更新,若内容或图片失效,请留言反馈

1.Maven介绍

Apache Maven是一个项目管理和构建工具,它基于项目对象模型(Project Object Model , 简称: POM)的概念,通过一小段描述信息来管理项目的构建、报告和文档。

官网:https://maven.apache.org/

Maven的作用:

  1. 方便的依赖管理
  2. 统一的项目结构
  3. 标准的项目构建流程

2.Maven模型

  • 项目对象模型 (Project Object Model)
  • 依赖管理模型(Dependency)
  • 构建生命周期/阶段(Build lifecycle & phases)

构建生命周期/阶段(Build lifecycle & phases)
image-20221130142100703.png

以上图中紫色框起来的部分,就是用来完成标准化构建流程 。当我们需要编译,Maven提供了一个编译插件供我们使用;当我们需要打包,Maven就提供了一个打包插件供我们使用等。

项目对象模型 (Project Object Model)
image-20221130142643255.png

以上图中紫色框起来的部分属于项目对象模型,就是将我们自己的项目抽象成一个对象模型,有自己专属的坐标,如下图所示是一个Maven项目:
image-20220616094113852.png

坐标,就是资源(jar包)的唯一标识,通过坐标可以定位到所需资源(jar包)位置
image-20221130230134757.png

依赖管理模型(Dependency)
image-20221130143139644.png

以上图中紫色框起来的部分属于依赖管理模型,是使用坐标来描述当前项目依赖哪些第三方jar包
image-20221130174805973.png

之前我们项目中需要jar包时,直接就把jar包复制到项目下的lib目录,而现在书写在pom.xml文件中的坐标又是怎么能找到所要的jar包文件的呢?

答案:Maven仓库

3.Maven仓库

仓库:用于存储资源,管理各种jar包

仓库的本质就是一个目录(文件夹),这个目录被用来存储开发中所有依赖(就是jar包)和插件

Maven仓库分为:

  • 本地仓库:自己计算机上的一个目录(用来存储jar包)
  • 中央仓库:由Maven团队维护的全球唯一的。仓库地址:https://repo1.maven.org/maven2/
  • 远程仓库(私服):一般由公司团队搭建的私有仓库
image-20220616095633552.png

当项目中使用坐标引入对应依赖jar包后,首先会查找本地仓库中是否有对应的jar包

  • 如果有,则在项目直接引用
  • 如果没有,则去中央仓库中下载对应的jar包到本地仓库

如果还可以搭建远程仓库(私服),将来jar包的查找顺序则变为: 本地仓库 --> 远程仓库--> 中央仓库


4.Maven安装

认识了Maven后,我们就要开始使用Maven了,那么首先我们要进行Maven的下载与安装。

下载

下载地址:https://maven.apache.org/download.cgi

安装步骤

Maven安装配置步骤:

  1. 解压安装
  2. 配置仓库
  3. 配置Maven环境变量

解压 apache-maven-3.6.1-bin.zip(解压即安装)

建议解压到没有中文、特殊字符的路径下。如课程中解压到 E:\develop 下。
1-1669821012006.gif

解压缩后的目录结构如下:
image-20220616100529868-1669794069698.png

  • bin目录 : 存放的是可执行命令。(mvn 命令重点关注)
  • conf目录 :存放Maven的配置文件。(settings.xml配置文件后期需要修改)
  • lib目录 :存放Maven依赖的jar包。(Maven也是使用java开发的,所以它也依赖其他的jar包)

配置本地仓库
1.在自己计算机上新一个目录(本地仓库,用来存储jar包)
image-20221130231857537.png

2.进入到conf目录下修改settings.xml配置文件
1). 使用超级记事本软件,打开settings.xml文件,定位到53行

2). 复制标签,粘贴到注释的外面(55行)

3). 复制之前新建的用来存储jar包的路径,替换掉标签体内容
2.gif

配置阿里云私服
由于中央仓库在国外,所以下载jar包速度可能比较慢,而阿里公司提供了一个远程仓库,里面基本也都有开源项目的jar包。

进入到conf目录下修改settings.xml配置文件:

1). 使用超级记事本软件,打开settings.xml文件,定位到160行左右

2). 在标签下为其添加子标签,内容如下:
3.gif

注意配置的位置,在 ... 中间添加配置。如下图所示:

image-20221130161346565.png

注: 只可配置一个(另一个要注释!) ,不然两个可能发生冲突,导致jar包无法下载!!!!!!!

配置环境变量

Maven环境变量的配置类似于JDK环境变量配置一样
1). 在系统变量处新建一个变量MAVEN_HOME
  • MAVEN_HOME环境变量的值,设置为maven的解压安装目录
    image-20220616102344350.png

2). 在Path中进行配置

  • PATH环境变量的值,设置为:%MAVEN_HOME%\bin
    image-20220616102435856.png

3). 打开DOS命令提示符进行验证,出现如图所示表示安装成功

image-20220616102554143.pngmvn -v
By xiao On