Maven 构建生命周期

简介: Maven的构建生命周期包括验证、编译、测试、打包、检查、安装和部署等阶段,确保项目正确、可分发。它有三个标准生命周期:Clean(清除目标文件)、Default(验证、编译、测试、打包、验证质量、安装和部署)和Site(生成项目文档和站点)。这些生命周期阶段按顺序执行,支持项目的完整构建、管理和发布过程。

Maven 构建生命周期

Maven 构建生命周期定义了一个项目构建跟发布的过程。

阶段 处理 描述
验证 validate 验证项目 验证项目是否正确且所有必须信息是可用的
编译 compile 执行编译 源代码编译在此阶段完成
测试 Test 测试 使用适当的单元测试框架(例如JUnit)运行测试。
包装 package 打包 将编译后的代码打包成可分发的格式,例如 JAR 或 WAR
检查 verify 检查 对集成测试的结果进行检查,以保证质量达标
安装 install 安装 安装打包的项目到本地仓库,以供其他项目使用
部署 deploy 部署 拷贝最终的工程包到远程仓库中,以共享给其他开发人员和工程
为了完成 default 生命周期,这些阶段(包括其他未在上面罗列的生命周期阶段)将被按顺序地执行。

Maven 有以下三个标准的生命周期:

1、Clean 生命周期:

clean:删除目标目录中的编译输出文件。这通常是在构建之前执行的,以确保项目从一个干净的状态开始。
2、Default 生命周期(也称为 Build 生命周期):

validate:验证项目的正确性,例如检查项目的版本是否正确。
compile:编译项目的源代码。
test:运行项目的单元测试。
package:将编译后的代码打包成可分发的格式,例如 JAR 或 WAR。
verify:对项目进行额外的检查以确保质量。
install:将项目的构建结果安装到本地 Maven 仓库中,以供其他项目使用。
deploy:将项目的构建结果复制到远程仓库,以供其他开发人员或团队使用。
3、Site 生命周期:

site:生成项目文档和站点信息。
deploy-site:将生成的站点信息发布到远程服务器,以便共享项目文档。

相关文章
|
1天前
|
Java jenkins 持续交付
Jenkins是开源CI/CD工具,用于自动化Java项目构建、测试和部署。通过配置源码管理、构建触发器、执行Maven目标,实现代码提交即触发构建和测试
【7月更文挑战第1天】Jenkins是开源CI/CD工具,用于自动化Java项目构建、测试和部署。通过配置源码管理、构建触发器、执行Maven目标,实现代码提交即触发构建和测试。成功后,Jenkins执行部署任务,发布到服务器或云环境。使用Jenkins能提升效率,保证软件质量,加速上线,并需维护其稳定运行。
11 0
|
2天前
|
Java 测试技术 Maven
Maven 构建生命周期
Maven的构建生命周期包括Clean、Default和Site三个阶段,用于项目构建、清理和文档生成。Default生命周期中的validate、compile、test、package、verify、install和deploy步骤依次执行,完成从验证到部署的全过程。插件目标如`dependency:copy-dependencies`可独立于构建阶段调用,如`mvn clean dependency:copy-dependencies package`先清理、复制依赖,再打包。
|
2天前
|
Java Maven
Maven 自动化构建
**Maven自动化构建确保依赖稳定性。当bus-core-api(1.0-SNAPSHOT)构建完成后,app-web-ui和app-desktop-ui这两个依赖它的项目自动触发构建,维持版本协调。**
|
5天前
|
Java 测试技术 Maven
Maven 构建生命周期
Maven生命周期包括Clean(clean)、Default(validate, compile, test, package, verify, install, deploy)和Site(site, deploy-site)。Clean清除编译输出,Default处理验证、编译、测试、打包、检查、安装和部署,Site生成项目文档。阶段按序执行,插件目标如dependency:copy-dependencies可独立调用。例如,`mvn clean dependency:copy-dependencies package`先执行清理,然后复制依赖,最后打包。
|
5天前
|
Java Maven
Maven 自动化构建
**Maven自动化构建确保依赖稳定性**:当`bus-core-api`构建完成后,`app-web-ui`和`app-desktop-ui`这两个依赖它的项目自动构建。`app-web-ui`引用`bus-core-api`的1.0-SNAPSHOT,同样`app-desktop-ui`也依赖相同的版本。
|
5天前
|
XML Java Maven
Maven 构建配置文件
Maven构建配置文件用于定制构建,默认值可通过pom.xml中的profiles或activeProfiles调整,适应不同环境如生产和开发。配置文件分项目级、用户级和全局级。激活方式包括命令行、Maven设置、环境变量、操作系统设置及文件存在。示例中,env.properties为基础配置,env.test.properties和env.prod.properties对应测试和生产环境。AntRun插件常用于生命周期绑定,但与配置文件功能本身无关。
|
5天前
|
Java 测试技术 Maven
Maven打包使用多线程加速构建过程
Maven打包使用多线程加速构建过程
31 0
|
7天前
|
Java Maven
Maven 自动化构建
Maven自动化构建确保项目依赖稳定性。当`bus-core-api`构建完成后,`app-web-ui`和`app-desktop-ui`自动构建。两者依赖`bus-core-api`的1.0-SNAPSHOT版本。
|
7天前
|
Java 测试技术 项目管理
Maven 构建生命周期
Maven生命周期包括Clean(clean)、Default(validate, compile, test, package, verify, install, deploy)和Site(site, deploy-site),管理项目构建、测试、打包、验证、安装与部署。Clean清除编译输出,Default执行从验证到部署的全过程,Site生成并发布项目文档。每个阶段按顺序执行,简化项目管理。
|
3天前
|
Java Shell Apache
Maven 项目文档
使用 Maven 创建 `consumerBanking` 项目,命令行输入: ```sh mvn archetype:generate -DgroupId=com.companyname.bank -DartifactId=consumerBanking -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false ``` 确保 `pom.xml` 包含最新 `maven-site-plugin`(v3.3+)和 `maven-project-info-reports-plugin`(v2.7+)