生命周期的定义

Maven的生命周期(lifecycle)是对构建过程进行的抽象。

它包含了项目的清理、初始化、编译测试打包、集成测试、验证、部署站点生成等几乎所有的构建步骤。

它将项目整体划分为一个个阶段,按顺序依次执行,也可以指定执行到某个阶段,然后结束。

因为Maven的生命周期是抽象的,因此它不做任何的实际工作,全部由插件(plugin)完成。

生命周期的分类

在这里插入图片描述

Maven的默认插件

在这里插入图片描述

三个构建生命周期

Maven 的内部有三个标准生命周期,分别是 : clean, default, site

标准生命周期作用
clean 项目清理
default(build) 项目部署
site 项目站点文档创建

生命周期与阶段

Maven将生命周期(lifecycle) 划分为一个个的阶段 (phase)

一系列顺序执行的阶段 (phase),构成一个完整的生命周期(lifecycle)

比如执行mvn clean命令,该命令包含以下阶段:

pre-clean:执行一些需要在clean之前完成的工作
clean:移除所有上一次构建生成的文件
post-clean:执行一些需要在clean之后立刻完成的工作

这三个阶段按顺序全部执行完成后,才算完成了clean生命周期。

clean生命周期

clean生命周期通过clean插件(自带)完成,功能是删除当前项目的target目录(可自行尝试)

site生命周期

site生命周期:程序员可以使用 Maven 提供的 maven-site-plugin 插件(该插件不是默认插件,需要引用)让 Maven 生成一个 Web 站点, 以站点的形式发布信息。

default(build)生命周期

clean生命周期,只有一个阶段,点击clean插件即可完成。

site生命周期,和程序开发的关系并不大,作为一个程序员,我平时几乎用不到该生命周期。

三大生命周期中,和程序员关系最密切的 是 default(build)生命周期

在这里插入图片描述
default(build)生命周期和程序开发息息相关,我认为还是有了解的必要。

default(build)生命周期各阶段详解

核心阶段详解
validate 验证项目是否正确,所有必要信息是否可用(很少单独使用)
compile 编译项目的源代码(将src/main中的java代码编译成class文件,输出到targe目录下)
test 将单元测试的资源文件和代码进行编译,生成的文件位于target/test-classes (打包部署请跳过该阶段)
package 把class文件,resources文件打包成jar包(也可以是war包),生成的jar包位于target目录下
verify 检查包是否有效(很少单独使用)
install 将jar部署到本地仓库,本地的其他模块依赖该jar包时,可以直接从本地仓库去获取
deploy 将jar包部署到远端仓库,需要在maven的setting.xml中配置私服的用户名和密码,以及在pom.xml配置
 posted on 2022-07-25 22:30  小北呦  阅读(1560)  评论(0编辑  收藏  举报