Windows 安装 Maven 详细教程(含镜像与本地仓库配置)

前言

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。

  1. 在文件资源管理器中,找到你的 JDK 安装目录(例如 C:\Program Files\Java\jdk-17.0.12)。
  2. 按下 Win + S,搜索"环境变量",并选择"编辑系统环境变量"。
  3. 在"系统属性"窗口中,点击"环境变量"按钮。
  4. 在"系统变量"区域,点击"新建"。
    • 变量名 : JAVA_HOME
    • 变量值 : 你的 JDK 安装目录的完整路径(不包含 bin 文件夹)。
  5. 点击"确定"保存。此时,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 是一个"绿色软件",无需复杂的安装过程,解压即用。

  1. 选择一个不含中文、空格或特殊字符 的目录作为 Maven 的安装根目录。例如:D:\dev-tools\apache-maven-3.9.9
  2. 将下载的 .zip 文件解压到该目录。解压后,目录结构应包含以下关键文件夹:
    • bin/: 存放可执行脚本,如 mvn.cmd
    • conf/: 存放核心配置文件 settings.xml
    • lib/: 存放 Maven 运行所需的 JAR 库文件。

三、配置 Maven 环境变量

为了让系统在任何位置都能识别 mvn 命令,需要将其添加到系统的 PATH 环境变量中。

  1. 设置 MAVEN_HOME:

    • 再次打开"环境变量"设置窗口。
    • 在"系统变量"中,点击"新建"。
      • 变量名 : MAVEN_HOME
      • 变量值 : Maven 的安装根目录(例如 D:\dev-tools\apache-maven-3.9.9)。
  2. 更新 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)。

  1. 使用文本编辑器(如 VS Code、Notepad++)打开 settings.xml
  2. 在文件中找到 <settings> 根标签。
  3. <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 文件。

  1. 找到 <mirrors> 标签块(通常在文件中部)。
  2. <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)。后者优先级更高,适合存放个人敏感信息(如私服账号密码)。
相关推荐
电商API&Tina2 小时前
淘宝 / 京东关键词搜索 API 接入与实战用途教程|从 0 到 1 搭建电商选品 / 比价 / 爬虫替代系统
java·开发语言·数据库·c++·python·spring
VelinX2 小时前
【个人学习||spring】
java·学习·spring
WZTTMoon2 小时前
VS Code Java开发配置与使用经验分享
java·vscode
语戚2 小时前
力扣 494. 目标和 —— 回溯 & 动态规划双解法全解(Java 实现)
java·算法·leetcode·动态规划·力扣·dp·回溯
YXWik62 小时前
Langchain4j(3) Prompt 提示词工程 + PromptTemplate + SystemMessage 高级用法
java·ai·prompt
StarShip2 小时前
JVM堆栈溢出监测原理
android·java
CodeCaptain3 小时前
【三】OpenClaw给飞书添加24小时工作的AI助理
windows·ubuntu·ai·飞书·openclaw
北极的代码3 小时前
2026年Java后端热点科普:Java 26新特性+Java 21落地实战,解锁后端开发新范式
java·后端
敖正炀3 小时前
深入对比 Java 并发工具:CyclicBarrier、CountDownLatch 与 Semaphore
java