Maven基础概念
# 1. 仓库
- 仓库:用于存储资源,包含各种jar包
- 仓库分类:
- 本地仓库:自己电脑上存储资源的仓库,连接远程仓库获取资源
- 远程仓库:非本机电脑上的仓库,为本地仓库提供资源
- 中央仓库:Maven团队维护,存储所有资源的仓库
- 私服:部门/公司范围内存储资源的仓库,从中央仓库获取资源
- 私服的作用:
- 保存具有版权的资源,包含购买或自主研发的jar
- 中央仓库中的jar都是开源的,不能存储具有版权的资源
- 一定范围内共享资源,仅对内部开放,不对外共享
- 保存具有版权的资源,包含购买或自主研发的jar
# 2. 坐标
什么是坐标? Maven中的坐标用于描述仓库中资源的位置 https://repo1.maven.org/maven2l (opens new window)
Maven坐标主要组成 groupld:定义当前Maven项目隶属组织名称(通常是域名反写,例如: org.mybatis) artifactld:定义当前Maven项目名称(通常是模块名称,例如CRM、 SMS) version:定义当前项目版本号 packaging: 定义该项目的打包方式
Maven坐标的作用
使用唯一标识,唯一性定位资源位置,通过该标识可以将资源的识别与下载工作交由机器完成
# 3. 本地仓库配置
Maven启动后,会自动保存下载的资源到本地仓库
默认位置
<localRepository>${user.home}/.m2/repository</localRepository>
当前目录位置为登录用户名所在目录下的.m2文件夹中
自定义位置
<localRepository>D:\maven\repository</localRepository>
当前目录位置为D:mavenrepository文件夹中
# 4. 远程仓库配置
Maven默认连接的仓库位置
<repositories>
<repository>
<id>central</id>
<name>Central Repository</name>
<url>https://repo.maven.apache.org/maven2</url>
<layout>default</layout>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
# 5. 镜像仓库配置
在setting文件中配置阿里云镜像仓库
<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>
# 6. 全局setting与用户setting区别
- 全局settting定义了当前计算器中Maven的公共配置
- 用户settting定义了当前用户的配置
上次更新: 2025/03/09, 18:29:07