目录
[1.3Maven 核⼼功能](#1.3Maven 核⼼功能)
[1.4Maven Help插件](#1.4Maven Help插件)
[2.Maven 仓库](#2.Maven 仓库)
[3.Maven 设置国内源](#3.Maven 设置国内源)
1.了解Maven
1.1什么是Maven
Maven是⼀个项⽬管理⼯具。基于POM(Project Object Model,项⽬对象模型)的概念,Maven可以通 过⼀⼩段描述信息来管理项⽬的构建,报告和⽂档的项⽬管理⼯具软件。
Maven是⼀个项⽬管理⼯具 , 通过pom.xml⽂件的配置获取jar包,⽽不⽤⼿动去添加jar包
pom.xml:

想了解更多: Maven -- Welcome to Apache Maven
1.2快速创建一个Maven项⽬
IDEA本⾝已经集成了Maven, 我们可以直接使⽤, ⽆需安装
(以下截图的idea版本为: 2022.1.4, 不同版本的idea界⾯展⽰会有所不同)
File -> New -> Project
点击 Create, 就创建好了⼀个Maven项⽬
1.3Maven 核⼼功能
Maven的功能有很多,我们就重点介绍最常用的核心功能。
1.3.1项⽬构建
Maven 提供了标准的,跨平台(Linux, Windows, MacOS等)的⾃动化项⽬构建⽅式
当我们开发了⼀个项⽬之后, 代码需要经过 编译, 测试, 打包, 发布 等流程, 每次代码的修改, 都需要经过 这些流程, 如果代码反复调试修改, 这个流程就需要反复进⾏, 就显得特别⿇烦,, ⽽Maven 给我们提供了 ⼀套简单的命令来完成项⽬的构建.
Maven命令:
⽐如, 点击package, 就可以完成项⽬的打包操作
打包就是把所有的class⽂件, 全部放在⼀起, 打成jar包或者war包

我们打的包在哪呢?

1.3.2依赖管理
依赖: 指当前项⽬运⾏所需要的jar包.
上⾯说到, Maven是⼀个项⽬管理⼯具, 通过pom.xml⽂件的配置获取jar包,⽽不⽤⼿动去添加jar包
获取的jar包, 其实就是依赖.
pom.xml 就是maven 的配置⽂件,⽤以描述项⽬的各种信息
如果不 使⽤Maven,我们就需要⼿动下载包.并且添加到项⽬中。
如果使⽤Maven, 我们只需要在pom.xml中引⼊对应的依赖就可以了。
依赖的引入格式:
<dependencies>
<!--⾥⾯放置项⽬的依赖坐标, 可为多个 -->
</dependencies>
比如我们引入:mysql-connector-java的依赖
1.在pom⽂件 <dependencies> 标签内, 添加依赖坐标
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.30</version>
</dependency>
2.点击刷新按钮, 引⼊新加⼊的依赖jar包

3. 刷新完之后, 就可以在项⽬中看到新加⼊的jar包

当然也会引入依赖的依赖
我们可以在pom⽂件中引入依赖,同理也可以在pom⽂件中排除依赖。
排除依赖: 指主动断开依赖的资源。(被排除的资源⽆需指定版本)

1.4Maven Help插件
当项⽬⽐较复杂时, 我们就会有Jar包冲突的问题, 这时候就需要去解决依赖冲突. 解决冲突之前, 需要先 找到冲突, 我们可以使⽤Maven Help插件来观察包和包之间的依赖关系。
如何安装呢?
大概步骤:
安装插件: File -> Settings ->Plugins -> 搜索'Maven Help' -> 找到对应插件, 点击Install 安装即可, 安装 后需要重启下idea, 才能⽣效
详细操作如下:



安装之后, 打开pom⽂件, 可以看到Jar包之间的依赖关系
也可以右键排除掉⼀些依赖

2.Maven 仓库
问题引入:我们通过短短⼏⾏代码, 就把依赖jar包放在了项⽬⾥, 具体是如何做的呢?
还是以mysql-connector-java的依赖为例
java
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.30</version>
</dependency>
这个代码, 我们称之为 "坐标", 也就是唯⼀的.
在Maven中, 根据 groupId、artifactId、version的配置, 来唯⼀识别⼀个 jar 包, 缺⼀不可.
当我们在pom⽂件中配置完依赖之后, 点击刷新, Maven会根据坐标的配置, 去仓库⾥寻找Jar包, 并把他下载下来, 添加到项⽬中. 这个Jar包下载的地⽅就称为仓库。
Maven仓库的本质就是⼀个⽬录(⽂件夹),这个⽬录被⽤来存储开发中所有依赖(jar包, 插件等)

2.1中央仓库
中央仓库: maven 软件中内置⼀个远程仓库地址,就是中央仓库,服务于整个互联⽹. 由 Maven 团队 维护,全球唯⼀
界面

仓库地址:Central Repository: (maven.org)https://repo1.maven.org/maven2/
但直接在用仓库地址去找可能不好找。
可以通过 这个⽹站来查询并下载
Maven Repository: Search/Browse/Explore (mvnrepository.com)https://mvnrepository.com/
进入界面
查找Jar的坐标的步骤:
1.进⾏查找, ⽐如mysql

2.选择要添加的Jar包版本
3.查看Jar包对应坐标

2.2本地仓库
本地仓库: ⾃⼰计算机上的⼀个⽬录(⽤来存储jar包)
本地仓库地址可以通过Maven配置查看:
File -> Settings

3.Maven 设置国内源
因为中央仓库在国外, 所以下载起来会⽐较慢, 所以咱们选择借助国内⼀些公开的远程仓库来下载资源。
如何设置国内源?
1.查看配置⽂件的地址
我的已经是配置过了的
最开始的配置⽂件的地址都设置类似于下图的路径下:
如有必要可以把整个.m文件复制到你选择的路径底下。
以我为例:
2.配置国内源
Maven 仓库默认在国外 ,国内使⽤时会⽐较慢,我们可以更换为阿⾥云 的仓库
也可以选择别的仓库可参考: Maven 镜像地址大全 - 知乎 (zhihu.com)https://zhuanlan.zhihu.com/p/627320558
打开settings.xml, 在 mirrors 节点上,添加内容如下:
java
<mirror>
<id>aliyunmaven</id>
<mirrorOf>central</mirrorOf>
<name>阿⾥云公共仓库</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
</mirror>
如上如果是在File -> Settings下完成,只对当前项目有效。
3.设置新项⽬的setting
为了让后续新建的项⽬也⽣效, 需要重新设置⼀下新项⽬的 Settings
当前项⽬和新项⽬共⽤⼀个setttings⽂件即可, 所以新项⽬的设置, 只需要确认⼀下settings⽂件的路 径即可

以上为我个人的小分享,如有问题,欢迎讨论!!!
都看到这了,不如关注一下,给个免费的赞
