前言
Maven 是 Java 生态系统中不可或缺的项目管理和构建自动化工具。它通过项目对象模型(POM)的概念,标准化了项目的构建、依赖管理、文档生成等流程。对于 Windows 开发者而言,正确安装和配置 Maven 是高效进行 Java 项目开发的第一步。
一、安装前的核心准备:确认并配置 JDK 环境
Maven 本身是用 Java 编写的,因此其运行完全依赖于 Java Development Kit (JDK)。在安装 Maven 之前,必须确保系统中已正确安装并配置了 JDK。
1. 验证 JDK 是否已安装
按下 Win + R 键,输入 cmd 打开命令提示符,执行以下命令:
bash
java -version
如果命令成功返回 JDK 的版本信息(例如 java version "17.0.12" 2025-04-15 LTS),则说明 JDK 已安装。如果提示 'java' 不是内部或外部命令,则需要先安装 JDK。
2. JDK 版本与 Maven 的兼容性
选择合适的 JDK 版本至关重要,以确保与所选 Maven 版本的兼容性。
- Maven 3.9.x (当前主流稳定版):要求运行环境为 JDK 8 或更高版本。
- Maven 3.8.x:同样支持 JDK 8 及以上。
- 最佳实践 :建议使用 JDK 17 (LTS 长期支持版本)或 JDK 21(最新 LTS 版本)作为开发环境,它们能完美兼容所有现代 Maven 版本,并提供最新的语言特性和性能优化。
3. 配置 JAVA_HOME 环境变量
即使 java -version 命令有效,也强烈建议显式设置 JAVA_HOME 环境变量,因为许多构建工具(包括 Maven)会优先读取此变量来定位 JDK。
- 在文件资源管理器中,找到你的 JDK 安装目录(例如
C:\Program Files\Java\jdk-17.0.12)。 - 按下
Win + S,搜索"环境变量",并选择"编辑系统环境变量"。 - 在"系统属性"窗口中,点击"环境变量"按钮。
- 在"系统变量"区域,点击"新建"。
- 变量名 :
JAVA_HOME - 变量值 : 你的 JDK 安装目录的完整路径(不包含
bin文件夹)。
- 变量名 :
- 点击"确定"保存。此时,Maven 将能够准确无误地找到 JDK。
二、下载与安装 Maven
1. 获取 Maven 安装包
访问 Maven 官方下载页面:https://maven.apache.org/download.cgi
- 推荐下载 :选择 Binary zip archive (
apache-maven-{version}-bin.zip)。这是适用于 Windows 系统的标准分发包。 - 历史版本 :如需特定旧版本,可前往存档页面:https://archive.apache.org/dist/maven/maven-3/。
2. 解压安装包
Maven 是一个"绿色软件",无需复杂的安装过程,解压即用。
- 选择一个不含中文、空格或特殊字符 的目录作为 Maven 的安装根目录。例如:
D:\dev-tools\apache-maven-3.9.9。 - 将下载的
.zip文件解压到该目录。解压后,目录结构应包含以下关键文件夹:bin/: 存放可执行脚本,如mvn.cmd。conf/: 存放核心配置文件settings.xml。lib/: 存放 Maven 运行所需的 JAR 库文件。
三、配置 Maven 环境变量
为了让系统在任何位置都能识别 mvn 命令,需要将其添加到系统的 PATH 环境变量中。
-
设置
MAVEN_HOME:- 再次打开"环境变量"设置窗口。
- 在"系统变量"中,点击"新建"。
- 变量名 :
MAVEN_HOME - 变量值 : Maven 的安装根目录(例如
D:\dev-tools\apache-maven-3.9.9)。
- 变量名 :
-
更新
Path变量:- 在"系统变量"列表中,找到名为
Path的变量,并双击或选中后点击"编辑"。 - 点击"新建",然后输入
%MAVEN_HOME%\bin。 - 点击"确定"保存所有更改。
- 在"系统变量"列表中,找到名为
3. 验证 Maven 安装
重新打开一个新的命令提示符窗口(重要:必须是新窗口,以加载新的环境变量),执行以下命令:
bash
mvn -v
如果配置成功,你将看到类似如下的输出:
Apache Maven 3.9.9 (8e8579a7e0d6f1c1b3b5b5b5b5b5b5b5b5b5b5b5)
Maven home: D:\dev-tools\apache-maven-3.9.9
Java version: 17.0.12, vendor: Oracle Corporation, runtime: C:\Program Files\Java\jdk-17.0.12
Default locale: zh_CN, platform encoding: GBK
OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"
此输出清晰地展示了 Maven 版本、安装路径、所使用的 Java 版本及运行时路径,证明安装和环境变量配置均已完成。
四、配置本地仓库(Local Repository)
Maven 会将项目依赖(JAR 包等)下载并缓存在本地仓库中,以避免重复下载。默认情况下,本地仓库位于用户主目录下的 .m2/repository 文件夹(例如 C:\Users\YourName\.m2\repository)。为了更好的磁盘空间管理和项目隔离,建议自定义本地仓库路径。
1. 创建本地仓库目录
在你希望的位置创建一个新的文件夹,例如 D:\maven-repo。
2. 修改 settings.xml 文件
settings.xml 是 Maven 的全局配置文件,位于 Maven 安装目录的 conf 文件夹下(%MAVEN_HOME%\conf\settings.xml)。
- 使用文本编辑器(如 VS Code、Notepad++)打开
settings.xml。 - 在文件中找到
<settings>根标签。 - 在
<settings>标签内,找到被注释掉的<localRepository>行(通常在第 55 行左右)。取消注释,并将其值修改为你刚刚创建的目录路径。
xml
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
https://maven.apache.org/xsd/settings-1.0.0.xsd">
<!-- localRepository
| The path to the local repository maven will use to store artifacts.
|
| Default: ${user.home}/.m2/repository
-->
<localRepository>D:/maven-repo</localRepository>
<!-- 其他配置... -->
</settings>
注意 :在 Windows 路径中,可以使用正斜杠 / 或双反斜杠 \\。使用正斜杠是更通用且不易出错的做法。
3. 验证本地仓库配置
执行一次简单的 Maven 命令(如 mvn archetype:generate 并中断),然后检查你指定的 D:\maven-repo 目录是否开始有文件写入。或者,在后续的项目构建中,所有下载的依赖都将出现在此目录下。
五、配置国内镜像(Mirror)以加速依赖下载
Maven 默认从位于美国的中央仓库(repo.maven.apache.org)下载依赖,这在国内会导致速度极慢甚至超时。配置国内镜像源是提升开发效率的关键一步。
1. 选择镜像源
国内最常用、最稳定的镜像是 阿里云 Maven 镜像。
2. 在 settings.xml 中配置镜像
继续编辑 conf/settings.xml 文件。
- 找到
<mirrors>标签块(通常在文件中部)。 - 在
<mirrors>标签内,添加以下阿里云镜像配置:
xml
<settings>
<!-- ... 其他配置,包括 localRepository ... -->
<mirrors>
<!-- 阿里云公共仓库镜像 -->
<mirror>
<id>aliyunmaven</id>
<mirrorOf>central</mirrorOf>
<name>阿里云公共仓库</name>
<url>https://maven.aliyun.com/repository/public</url>
</mirror>
<!-- 阿里云 Spring 插件仓库镜像(可选,但推荐) -->
<mirror>
<id>aliyun-spring</id>
<mirrorOf>spring-milestones,spring-snapshots</mirrorOf>
<name>阿里云 Spring 插件仓库</name>
<url>https://maven.aliyun.com/repository/spring</url>
</mirror>
</mirrors>
<!-- ... 其他配置 ... -->
</settings>
关键参数解释:
<id>: 镜像的唯一标识符,可自定义。<mirrorOf>: 最重要的字段 。central表示此镜像将替代 Maven 中央仓库。*表示替代所有仓库(不推荐,可能会导致私有仓库无法访问)。spring-milestones,spring-snapshots表示替代特定的仓库 ID。<url>: 镜像的实际地址。
通过以上配置,所有原本指向中央仓库的请求都将被重定向到阿里云,从而获得飞一般的下载速度。
额外提示:
- IDE 集成 :在 IntelliJ IDEA 或 Eclipse 中,记得在 Maven 设置里指定你自定义的
settings.xml文件和本地仓库路径,以确保 IDE 内的构建行为与命令行一致。 - 配置文件优先级 :Maven 会同时读取全局配置(
%MAVEN_HOME%\conf\settings.xml)和用户配置(%USER_HOME%\.m2\settings.xml)。后者优先级更高,适合存放个人敏感信息(如私服账号密码)。