Maven简介

IT蚱蜢哥2022年11月17日大约 3 分钟

Maven简介

1、Maven概述

Maven是优秀的构建工具,能够帮我们自动化构建过程,从清理、编译、测试到生成报告,再到打包和部署。

Maven不仅是构建工具,还是一个依赖管理工具和项目信息管理工具。它提供了中央仓库,能帮我们自动下载构件

最简单的时候场景是,在pom.xml里设置对第三方jar包的依赖,而不用所有用到的jar包都复制到工程lib目录,再配置javapath。

再者说在自己引入的jar包会出现很多重复的包,导致版本冲突,而maven会自动管理依赖!

所以这里我们介绍的就是怎样用 maven 来满足我们项目的日常需要。

Maven主要作用

  • 管理jar包
  • 项目构建

2、Maven项目结构

Maven 使用 约定优于配置 的原则,所以Maven项目都有固定的规则。 以下是Maven项目的结构:

目录目的
$存放 pom.xml和所有的子目录
${basedir}/src/main/java项目的 java源代码
${basedir}/src/main/resources项目的资源,比如说 数据源配置文件,spring配置文件
${basedir}/src/test/java项目的测试类,比如说 JUnit代码
${basedir}/src/test/resources测试使用的资源

3、Maven资源库

Maven资源库主要是用来存放Jar包,我们可以通过指定名称、版本去下载对应的jar包,例如jdbc驱动

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.35</version>
</dependency>

GAV坐标可以确定唯一的jar包

groupId:组织ID

artifactId:项目ID,一个组织(公司)可以有多个项目ID

version:指定版本号

Maven提供了多种资源库,有中央仓库、本地仓库也有私服,并且可以设置阿里云镜像进行中转,提高Jar包的下载速度。

Maven

3.1 中央仓库

Maven默认的存放jar包的地方是

https://repo.maven.apache.org/maven2open in new window 也可能是http://repo1.maven.org/maven2open in new window

image-20221122164615845

可以在这里查询到所有的jar包信息,但是由于jar包众多,我们只需要按需加载即可。

所以我们不需要记住所有的jar包信息,可以通过指定网址查询:

image-20221122165432327

可以通过 搜索框 进行搜索

image-20221122165707996

点击对应的版本号,可以看到详细的GAV坐标,把对应的文件复制到Maven项目pom.xml里面即可

image-20221122170026325

注意

Maven默认从中央仓库下载,但是由于服务器存放在国外,简直是龟速下载!!!

不过我们可以使用国内的镜像(例如阿里云镜像),提高下载速度

3.2 本地仓库

我们在pom.xml里告诉maven要去中央资源库下载mysql8.0.31,那么它会下载到哪里呢?

默认会下载到 c:\users\登录名\.m2 下面,但是默认存放到C盘,如果重装系统会导致本地仓库清空,所以可以本次仓库放入其他盘符。

image-20221123161712390

设置方式

进入maven的conf目录, 打开settings.xml,设置 <localRepository>

3.3 私服

私服是架设在局域网的一种特殊的远程仓库,目的是代理远程仓库及部署第三方构件。有了私服之后,当 Maven 需要下载构件时,直接请求私服,私服上存在则下载到本地仓库;否则,私服请求外部的远程仓库,将构件下载到私服,再提供给本地仓库下载。

私服还可以用来在公司内部进行jar包的传递

image-20221123163643220

Loading...