Maven的三大生命周期

一、Maven的三大生命周期

  Maven的生命周期就是对所有的构建过程进行抽象和统一。包含了项目的清理、初始化、编译、测试、打包、集成测试、验证、部署和站点生成等几乎所有的构建步骤。

  Maven的生命周期是抽象的,即生命周期不做任何实际的工作,实际任务由插件完成,类似于设计模式中的模板方法。

二、三套生命周期

  Maven由三套相互独立的生命周期,分别是clean、default和site。每个生命周期包括一些阶段(phase),阶段是有顺序的,后面的阶段依赖于前面的阶段。

  1、clean生命周期:清理项目,包含三个phase。

  1)pre-clean:执行清理前需要完成的工作

  2)clean:清理上一次构建生成的文件

  3)post-clean:执行清理后需要完成的工作

  2、default生命周期

  1)validate:验证工程是否正确,所有需要的资源是否可用

  2)compile:编译项目的源代码。

  3)test:使用合适的单元测试框架来测试以编译的源代码。这些测试不需要已打包和部署。

  4)Package:把已编译的代码打包成可发布的格式,比如jar

  5) integration-test:如有需要,将包处理和发布到一个能够进行集成测试的环境

  6)verify:运行所有检查,验证包是否有效且达到质量标准

  7)install:把包安装到maven本地仓库,可以被其他工程作为依赖来使用

  8)Deploy:在集成或者发布环境下执行,将最终版本的包拷贝到repository,使得其他的开发者或者工程可以共享

  3、site生命周期

  1)pre-site:生成项目站点之前需要完成的工作

  2)site:生成项目站点文档

  3)post-site:生成项目站点之后需要完成的工作

  4)site-deploy:将站点发布到服务器

三、命令行和生命周期

  各个生命周期相互独立,一个生命周期的阶段前后依赖

  举例如下:

  1、mvn clean

  调用clean生命周期的clean阶段,实际执行pre-clean和clean阶段

  2、mvn test

  调用default生命周期的test阶段,实际执行test以及之前所有阶段

  3、mvn clean install

  调用clean生命周期的clean阶段和default的install阶段,实际执行pre-clean和clean,install以及之前所有阶段

原文地址:https://www.cnblogs.com/scar1et/p/12578661.html

时间: 2024-10-31 01:57:48

Maven的三大生命周期的相关文章

项目构建之maven篇:6.生命周期与插件

项目生命周期 清理 初始化 编译 测试 打包 部署 三套生命周期 1.clean pre-clean 执行一些需要在clean之前完成的工作 clean 移除所有上一次构建生成的文件 post-clean 执行一些需要在clean之后立刻完成的工作 2.compile validate generate-sources process-sources generate-resources process-resources 复制并处理资源文件,至目标目录,准备打包. compile 编译项目的源

【maven详解-生命周期】Maven的生命周期和插件

maven的生命周期是根据我们项目中常见的流程来定义的:清理.编译.测试.打包.集成测试.验证.部署等功能.maven的每个生命周期对应不同的阶段,每个阶段都对应不同的插件. maven定义了三套生命周期:clean.default.site.每个生命周期都包含了一些阶段(phase),三套生命周期相互独立,但各个生命周期中的phase却是有顺序的,且后面的phase依赖于前面的phase.执行某个phase时,其前面的phase会依顺序执行,但不会触发另外两套生命周期中的任何phase. 1

Maven整理笔记の生命周期和插件

项目构建的生命周期,其实软件开发人员每天都在干这个事,即项目清理.初始化.编译.测试.打包.集成测试.验证.部署和站点生成等,可以说几乎所有项目的构建都可以映射到这样一个生命周期上. Maven的插件机制是完全依赖Maven的生命周期的. 三套生命周期 Maven的生命周期并不是一个整体,Maven拥有三套独立的生命周期,它们分别是clean\default\site.Clean生命周期的目的是清理项目,default生命周期的目的是构建项目,而site的生命周期的目的是建立项目站点. 每个生命

Maven的构建生命周期理解

以下引用官方的生命周期解释https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html: 一.构建生命周期基础: Maven基于构建生命周期的中心概念.这意味着构建和分发特定工件(项目)的过程被明确定义. 对于构建项目的人员,这意味着只需要学习一小堆命令即可构建任何Maven项目,POM将确保他们获得所需的结果. 有三个内置的生命周期:默认(default),清洁(clean)和站点(site).在

Maven专题3——生命周期与插件

三套生命周期 Maven有3套相互独立的生命周期,用户可以调用某个生命周期的阶段,而不会对其他生命周期产生影响. 每个生命周期包含一些有先后顺序的阶段,后面的阶段依赖于前面的阶段,意味着用户调用后面的生命周期阶段时,同一生命周期中前面的阶段也将被执行. clean生命周期 pre-clean clean post-clean default生命周期 validate initialize generate-sources process-sources generate-resources pr

maven入门-- part3 生命周期

简介: Maven有三套相互独立的生命周期,请注意这里说的是“三套”,而且“相互独立”,这三套生命周期分别是: Clean Lifecycle 在进行真正的构建之前进行一些清理工作. Default Lifecycle 构建的核心部分,编译,测试,打包,部署等等. Site Lifecycle 生成项目报告,站点,发布站点. Clean: 每套生命周期都由一组阶段(Phase)组成,我们平时在命令行输入的命令总会对应于一个特定的阶段.比如,运行mvn clean ,这个的clean是Clean生

IDEA中Maven项目的生命周期操作说明

目录 clean-清理操作 变化 结论 compile-编译操作 变化 结论 package-打包操作 变化 结论 install-安装操作 变化 结论 deploy-部署操作 IDEA中对Maven项目做了相当好的支持,专门有个Maven的模块用于进行项目的操作: 上图红框中的内容即开发者经常使用的操作,将英文简单翻译过来,其中文分别为Lifecycle(生命周期).clean(清理).validate(验证).compile(编译).test(测试).package(打包).verify(核

maven插件的生命周期的详细说明(两)

插件配置 定义解释:插件目标 当我们了解了maven插件之后.我们发现假设为每个功能编写一个独立的插件显然是不可取的,由于这些任务背后有非常多能够复用的代码.因此,把这些功能聚集在一个插件里,每个功能我们就称之为一个插件目标. 举个样例: maven-dependency-plugin有十多个目标,每一个目标相应了一个功能 分析项目依赖:dependency:analyze 列出项目依赖树:dependency: tree 列出项目全部已解析的依赖:dependency:list POM中插件全

(二)Maven 基本概念——依赖、生命周期、仓库管理、聚合&继承

1. 依赖配置 1.1 依赖配置主要包含如下元素: <!--添加依赖配置--> <dependencies> <!--项目要使用到junit的jar包,所以在这里添加junit的jar包的依赖--> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.9</version> <