一、为什么需要构建工具?
在理解 Maven/Gradle 之前,先明确它们解决的问题:
- 依赖管理:项目中可能需要引入第三方库(如 Spring、JUnit 等),手动下载和管理这些库的版本非常麻烦。
- 标准化构建流程:编译代码、运行测试、打包成 JAR/WAR 文件等步骤需要自动化。
- 插件扩展:支持通过插件扩展功能(如代码检查、部署到服务器等)。
二、Maven 详解
1. 核心概念
- POM 文件:项目根目录的 pom.xml是 Maven 的核心配置文件,定义了项目的依赖、构建步骤等信息。
- 坐标(Coordinates):通过 groupId,artifactId,version唯一标识一个依赖。
- 仓库(Repository): - 本地仓库:默认在用户目录下的 .m2文件夹,缓存已下载的依赖。
- 中央仓库:Maven 官方维护的公共仓库(repo.maven.apache.org)。
- 私有仓库:公司内部搭建的仓库(如 Nexus、Artifac
 
- 本地仓库:默认在用户目录下的