Maven 是一个强大的构建工具,依赖管理是其核心功能之一。在 Maven 中,所有的依赖包(JAR、POM 文件等)都存储在仓库中,以便项目能够快速访问和管理这些依赖。
Maven 主要使用两种类型的仓库:
- 本地仓库(Local Repository)
- 中央仓库(Central Repository)
此外,还有企业内部使用的 远程仓库(Remote Repository),如私有仓库 Nexus 或 Artifactory。
本文将深入探讨 Maven 本地仓库与中央仓库,以及如何配置和使用它们。
1. Maven 仓库概述
Maven 仓库是存储依赖包的地方。当 Maven 需要某个依赖时,它会按照以下顺序查找:
- 本地仓库(Local Repository):首先检查本地仓库是否已存在该依赖。
- 中央仓库(Central Repository):如果本地仓库没有,Maven 会从中央仓库下载。
- 远程仓库(Remote Repository)(可选):如果配置了私有仓库(如 Nexus),Maven 也会从这里下载。
如果 Maven 在这些位置都找不到依赖,它会抛出 构建失败 的错误。
2. Maven 本地仓库(Local Repository)
2.1 本地仓库是什么?
本地仓库是 Maven 在本机存储所有下载的依赖包的目录。Maven 默认 将本地仓库存储在用户主目录下:
- Windows:
C:\Users\你的用户名\.m2\repository
- Mac/Linux:
~/.m2/repository
作用:
- 存储已下载的 JAR 包,避免重复下载,提高构建速度。
- 存储
mvn install
命令安装的本地依赖包,供其他项目使用。
2.2 如何配置本地仓库?
默认情况下,Maven 使用 ~/.m2/repository
作为本地仓库,但我们可以修改配置,让 Maven 使用自定义的本地仓库路径。
步骤:
-
找到 Maven 的配置文件
settings.xml
- 默认位置:
- Windows:
C:\Users\你的用户名\.m2\settings.xml
- Linux/Mac:
~/.m2/settings.xml
- Windows:
- 如果该文件不存在,可以在 Maven 安装目录下找到
conf/settings.xml
并复制到~/.m2/
目录。
- 默认位置:
-
修改
settings.xml
,设置本地仓库路径