Maven 常用命令详解

前言

Apache Maven 是 Java 项目管理和构建自动化工具,它通过一个项目对象模型(POM, Project Object Model)来管理项目的构建、报告和文档。Maven 的核心优势在于其强大的依赖管理、标准化的项目结构以及丰富的插件生态系统。掌握 Maven 的常用命令是每个 Java 开发者必备的技能。

本篇博客将详细介绍 Maven 的核心命令,涵盖项目构建、依赖管理、生命周期操作、插件执行、项目信息查询等多个方面,并结合实际场景进行说明,帮助您高效地使用 Maven。


一、Maven 核心概念回顾

在深入命令之前,先快速回顾几个关键概念:

  1. POM (Project Object Model): 位于 pom.xml 文件中,是 Maven 项目的配置中心,定义了项目信息、依赖、插件、构建配置等。
  2. 生命周期 (Lifecycle): Maven 定义了三套独立的生命周期:default(构建项目)、clean(清理项目)、site(生成项目站点文档)。每个生命周期包含一系列按顺序执行的阶段(phase)。
  3. 阶段 (Phase): 生命周期中的一个步骤。例如,default 生命周期包含 validate, compile, test, package, verify, install, deploy 等阶段。
  4. 目标 (Goal): 插件(Plugin)的功能单元。一个阶段可以绑定一个或多个目标。
  5. 仓库 (Repository): 存储构件(Artifacts)的地方。分为本地仓库(Local Repository)、中央仓库(Central Repository)和远程仓库(Remote Repository,如公司私服 Nexus/Artifactory)。

二、Maven 常用命令详解

1. 项目构建与生命周期命令

这些命令是 Maven 最基础也是最常用的,直接对应 default 生命周期的阶段。

mvn compile
  • 作用: 编译主代码(src/main/java 目录下的 .java 文件)。
  • 执行阶段: 执行到 compile 阶段为止,包含之前的所有阶段(如 validate, generate-sources, process-sources, generate-resources, process-resources)。
  • 输出: 编译后的 .class 文件位于 target/classes 目录。
  • 示例:
    mvn compile
    
mvn test-compile
  • 作用: 编译测试代码(src/test/java 目录下的 .java 文件)。
  • 执行阶段: 执行到 test-compile 阶段。
  • 输出: 编译后的测试 .class 文件位于 target/test-classes 目录。
  • 说明: 此命令通常在运行测试前自动执行,但也可以单独运行。
  • 示例:
    mvn test-compile
    
mvn test
  • 作用: 运行项目的单元测试(使用 JUnit, TestNG 等框架)。
  • 执行阶段: 执行到 test 阶段,包含之前的 compiletest-compile
  • 输出: 测试结果报告通常在 target/surefire-reports(或 target/failsafe-reports)目录下。
  • 示例:
    mvn test
    
  • 常用参数:
    • -Dtest=TestClass:运行指定的测试类。
    • -Dt
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值