Maven环境搭建与项目实战
环境准备:JDK和Maven安装
1. 安装JDK
Maven依赖于Java环境,首先需要安装JDK 8或更高版本:
Windows系统:
-
从Oracle官网或AdoptOpenJDK下载JDK安装包
-
运行安装程序,记下安装路径(如:
C:\Program Files\Java\jdk-17.0.1
) -
配置环境变量:
shellJAVA_HOME = C:\Program Files\Java\jdk-17.0.1 PATH = %JAVA_HOME%\bin;%PATH%
Linux/macOS系统:
bash
# Ubuntu/Debian
sudo apt-get update
sudo apt-get install openjdk-17-jdk
# CentOS/RHEL
sudo yum install java-17-openjdk-devel
# macOS (使用Homebrew)
brew install openjdk@17
# 验证安装
java -version
javac -version
2. 安装Maven
下载和安装:
- 访问Maven官网下载最新版本
- 解压到指定目录(如:
C:\Program Files\apache-maven-3.9.4
)
配置环境变量:
shell
# Windows系统
M2_HOME = C:\Program Files\apache-maven-3.9.4
MAVEN_HOME = %M2_HOME%
PATH = %MAVEN_HOME%\bin;%PATH%
# Linux/macOS系统
export MAVEN_HOME=/opt/apache-maven-3.9.4
export PATH=$MAVEN_HOME/bin:$PATH
验证安装:
bash
mvn -v
应该看到Maven版本、Java版本等信息。
优化配置:修改settings.xml
找到配置文件
Maven配置文件位于%MAVEN_HOME%/conf/settings.xml
,推荐复制到用户目录:
- Windows:
C:\Users<用户名>.m2\settings.xml
- Linux/macOS:
~/.m2/settings.xml
配置镜像加速(国内用户必做)
xml
<mirrors>
<mirror>
<id>aliyunmaven</id>
<mirrorOf>*</mirrorOf>
<name>阿里云公共仓库</name>
<url>https://maven.aliyun.com/repository/public</url>
</mirror>
</mirrors>
其他实用配置
xml
<!-- 修改本地仓库路径 -->
<localRepository>D:\maven-repository</localRepository>
<!-- 配置JDK版本 -->
<profiles>
<profile>
<id>jdk-17</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>17</jdk>
</activation>
<properties>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
<maven.compiler.compilerVersion>17</maven.compiler.compilerVersion>
</properties>
</profile>
</profiles>
创建第一个Maven项目
使用Archetype生成项目骨架
bash
# 交互式创建项目
mvn archetype:generate -DgroupId=com.example -DartifactId=my-first-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
# 常用参数说明:
# -DgroupId:组织或公司标识(包名的前缀)
# -DartifactId:项目名称
# -DarchetypeArtifactId:项目模板类型
项目结构解读
生成的项目结构如下:
text
my-first-app/
├── src/
│ ├── main/
│ │ └── java/
│ │ └── com/
│ │ └── example/
│ │ └── App.java
│ └── test/
│ └── java/
│ └── com/
│ └── example/
│ └── AppTest.java
└── pom.xml
为什么是这样的结构? - 这就是"约定优于配置"的体现:
src/main/java
:主要源代码目录(约定)src/test/java
:测试代码目录(约定)src/main/resources
:资源文件目录(约定)src/test/resources
:测试资源目录(约定)target/
:编译输出目录(约定)
Maven默认知道去哪里找代码和资源,无需额外配置。
核心Maven命令实战
1. 编译项目
bash
mvn compile
- 编译main目录下的Java源代码
- 编译结果输出到
target/classes
目录 - 首次运行会下载相关依赖包
2. 运行测试
bash
mvn test
- 编译并运行所有测试用例
- 测试报告生成在
target/surefire-reports
目录 - 如果测试失败,构建会终止
3. 打包项目
bash
mvn package
- 执行编译、测试,然后打包
- 生成JAR文件在
target
目录(如:my-first-app-1.0-SNAPSHOT.jar
) - 打包类型由pom.xml中的
<packaging>
标签指定
4. 清理项目
bash
mvn clean
- 删除
target
目录中的所有构建产物 - 保持工作区整洁
5. 安装到本地仓库
bash
mvn install
- 执行编译、测试、打包,然后安装到本地Maven仓库
- 其他项目可以引用这个项目的jar包
实战示例:完整流程
bash
# 1. 创建项目
mvn archetype:generate -DgroupId=com.example -DartifactId=demo-app -DinteractiveMode=false
# 2. 进入项目目录
cd demo-app
# 3. 编译项目
mvn compile
# 4. 运行测试
mvn test
# 5. 打包项目
mvn package
# 6. 查看构建结果
ls target/
# 应该看到demo-app-1.0-SNAPSHOT.jar文件
# 7. 清理项目
mvn clean
常见问题解决
1. 下载速度慢
- 确认已配置阿里云镜像
- 检查网络连接
2. 编译错误
bash
# 如果出现版本错误,可以指定JDK版本
mvn compile -Dmaven.compiler.source=17 -Dmaven.compiler.target=17
3. 依赖下载失败
bash
# 清理失败的下载
mvn dependency:purge-local-repository
# 强制重新下载
mvn -U clean compile
总结
通过本章学习,你已经掌握了:
- Maven环境的安装和配置
- settings.xml的优化配置(镜像加速)
- 使用archetype快速创建项目
- Maven的标准项目结构
- 核心Maven命令的使用
现在你已经具备了使用Maven进行Java项目开发的基础能力。在下一章中,我们将深入解析pom.xml文件的详细配置,学习依赖管理和项目配置的高级技巧。
提示:建议多练习这些命令,熟悉Maven的工作流程,这是后续学习的基础。