Maven概述
Apache Maven是一个项目管理和构建自动化工具,主要用于Java项目。它通过项目对象模型(POM)来管理项目的构建、报告和文档。
依赖管理
自动下载和管理项目依赖
构建自动化
标准化的项目构建生命周期
项目结构
统一的项目目录结构
插件生态
丰富的插件扩展功能
Maven的优势
前置要求
Java JDK
Maven需要JDK 8或更高版本。如果还没有安装JDK,请先完成 第一章:JDK安装配置。
命令行工具
熟悉基本的终端命令操作。
网络连接
Maven需要从中央仓库下载依赖,确保网络连接正常。
检查Java环境
在安装Maven之前,先确认Java环境是否正确配置:
java -version
echo $JAVA_HOME
如果命令执行失败或JAVA_HOME为空,请先完成JDK的安装和配置。
Homebrew安装方式(推荐)
为什么推荐Homebrew?
- 安装简单,一条命令搞定
- 自动处理环境变量配置
- 版本管理和更新方便
- 与系统集成良好
步骤1:安装Maven
brew install maven
安装过程会自动下载Maven及其依赖,可能需要几分钟时间。
步骤2:验证安装
mvn -version
成功安装后,你应该看到类似这样的输出:
Apache Maven 3.9.5 (57804ffe001d7215b5e7bcb531cf83df38f93546) Maven home: /opt/homebrew/Cellar/maven/3.9.5/libexec Java version: 17.0.8, vendor: Eclipse Adoptium Java home: /Library/Java/JavaVirtualMachines/temurin-17.jdk/Contents/Home Default locale: zh_CN, platform encoding: UTF-8 OS name: "mac os x", version: "14.0", arch: "aarch64", family: "mac"
步骤3:查看安装位置
which mvn
brew --prefix maven
这些命令会显示Maven的安装路径,通常在:
- Apple Silicon Mac:
/opt/homebrew/bin/mvn
- Intel Mac:
/usr/local/bin/mvn
手动安装方式
如果你不想使用Homebrew,也可以手动下载安装Maven。
步骤1:下载Maven
访问Maven官网下载最新版本:
选择"Binary tar.gz archive"版本,不要下载源码版本。
步骤2:解压安装
将下载的文件解压到合适的目录:
# 创建安装目录
sudo mkdir -p /opt/maven
# 解压到安装目录(替换为实际的文件名)
sudo tar -xzf ~/Downloads/apache-maven-3.9.5-bin.tar.gz -C /opt/maven --strip-components=1
# 设置权限
sudo chown -R $(whoami):staff /opt/maven
步骤3:配置环境变量
编辑Shell配置文件:
nano ~/.zshrc
添加以下内容:
# Maven Environment
export MAVEN_HOME=/opt/maven
export PATH=$MAVEN_HOME/bin:$PATH
重新加载配置:
source ~/.zshrc
基础配置
Maven配置文件位置
Maven的配置文件位于以下位置:
全局配置
$MAVEN_HOME/conf/settings.xml
影响所有用户的Maven配置
用户配置
~/.m2/settings.xml
只影响当前用户的Maven配置
推荐使用用户配置文件,避免影响其他用户。
创建用户配置文件
创建Maven用户配置目录和文件:
# 创建.m2目录
mkdir -p ~/.m2
# 创建settings.xml文件
touch ~/.m2/settings.xml
基础配置内容
编辑 ~/.m2/settings.xml
文件:
${user.home}/.m2/repository
false
org.apache.maven.plugins
org.codehaus.mojo
aliyun-maven
central
Aliyun Maven Repository
https://maven.aliyun.com/repository/central
default
17
17
UTF-8
default
高级配置
本地仓库配置
默认情况下,Maven会将依赖下载到 ~/.m2/repository
。你可以自定义位置:
/Users/yourusername/maven-repo
更改本地仓库位置后,需要重新下载所有依赖。
镜像源配置
为了提高下载速度,推荐配置国内镜像源:
aliyun-maven
central
Aliyun Maven Repository
https://maven.aliyun.com/repository/central
tencent-maven
central
Tencent Maven Repository
https://mirrors.cloud.tencent.com/nexus/repository/maven-public/
huawei-maven
central
Huawei Maven Repository
https://repo.huaweicloud.com/repository/maven/
JDK版本配置
配置默认的Java编译版本:
jdk-17
17
17
17
UTF-8
UTF-8
内存配置
为Maven配置更多内存,提高构建性能:
# 在 ~/.zshrc 中添加
export MAVEN_OPTS="-Xmx2048m -Xms1024m -XX:MaxPermSize=512m"
重新加载配置:
source ~/.zshrc
安装验证
验证安装
检查Maven版本
mvn -version
检查配置文件
mvn help:effective-settings
检查本地仓库
ls -la ~/.m2/
测试依赖下载
mvn dependency:resolve
基本使用
创建新项目
使用Maven原型创建一个简单的Java项目:
mvn archetype:generate \
-DgroupId=com.example \
-DartifactId=my-app \
-DarchetypeArtifactId=maven-archetype-quickstart \
-DinteractiveMode=false
这将创建一个标准的Maven项目结构:
my-app/ ├── pom.xml └── src/ ├── main/ │ └── java/ │ └── com/ │ └── example/ │ └── App.java └── test/ └── java/ └── com/ └── example/ └── AppTest.java
常用Maven命令
编译项目
mvn compile
运行测试
mvn test
打包项目
mvn package
清理项目
mvn clean
安装到本地仓库
mvn install
完整构建
mvn clean install
依赖管理
在 pom.xml
中添加依赖:
org.junit.jupiter
junit-jupiter
5.9.2
test
org.apache.commons
commons-lang3
3.12.0
查看项目依赖树:
mvn dependency:tree
测试项目构建
进入创建的项目目录并测试构建:
cd my-app
mvn clean compile test package
如果一切正常,你应该看到 "BUILD SUCCESS" 的消息。