maven有三套生命周期

1.clean       清理项目

2.default     构建项目

3.site           建立项目站点

每套生命周期都包含了一些阶段,这些阶段是有序的,后面的阶段依赖前面的阶段,

以clean生命周期为例,它包括了pre-clean,clean和post-clean三个阶段,当我们调用pre-clean的时候, 只会执行pre-clean阶段;

当调用clean的时候,pre-clean和clean阶段会以顺序执行;当调用post-clean的时候,pre-clean,clean和post-clean三个阶段会以顺序执行。

这三套生命周期是相互独立的,可以仅仅调用clean声明周期的某个阶段, 或者调用default生命周期的某个阶段,而不会对其他生命周期产生任何影响。

clean生命周期共包含了三个阶段:
            pre-clean  执行一些需要在clean之前完成的工作
            clean  移除所有上一次构建生成的文件
            post-clean  执行一些需要在clean之后立刻完成的工作

default生命周期包含的阶段:
             validate
             initialize
             generate-sources
             process-sources
             generate-resources
             process-resources     复制并处理资源文件,至目标目录,准备打包。
             compile     编译项目的源代码。
             process-classes
             generate-test-sources  
             process-test-sources 
             generate-test-resources
             process-test-resources     复制并处理资源文件,至目标测试目录。
             test-compile     编译测试源代码。
             process-test-classes 
             test     使用合适的单元测试框架运行测试。这些测试代码不会被打包或部署。
             prepare-package 
             package     接受编译好的代码,打包成可发布的格式,如 JAR 。
             pre-integration-test
             integration-test
             post-integration-test 
             verify 
             install     将包安装至本地仓库,以让其它项目依赖。
             deploy     将最终的包复制到远程的仓库,以让其它开发人员与项目共享。

site生命周期的各个阶段:
             pre-site     执行一些需要在生成站点文档之前完成的工作
             site    生成项目的站点文档
             post-site     执行一些需要在生成站点文档之后完成的工作,并且为部署做准备
             site-deploy     将生成的站点文档部署到特定的服务器上

组合阶段执行

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

mvn test         执行的是default生命周期的test阶段, 实际执行的是validate到test阶段。

mvn clean  package      clean生命周期的pre-clean,clean阶段和 default生命周期的从validate到package阶段。

Maven学习(三)生命周期的更多相关文章

  1. vue学习三:生命周期钩子

    生命周期钩子介绍: 每个 Vue 实例在被创建时都要经过一系列的初始化过程——例如,需要设置数据监听.编译模板.将实例挂载到 DOM 并在数据变化时更新 DOM 等.同时在这个过程中也会运行一些叫做生 ...

  2. Maven的构建生命周期理解

    以下引用官方的生命周期解释https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html: 一.构建生命 ...

  3. 介绍maven构建的生命周期

    介绍maven构建的生命周期 这篇是 https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html 的 ...

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

    项目构建的生命周期,其实软件开发人员每天都在干这个事,即项目清理.初始化.编译.测试.打包.集成测试.验证.部署和站点生成等,可以说几乎所有项目的构建都可以映射到这样一个生命周期上. Maven的插件 ...

  5. Maven构建的生命周期

    什么是构建生命周期 构建生命周期是一组阶段的序列(sequence of phases),每个阶段定义了目标被执行的顺序.这里的阶段是生命周期的一部分.举例说明,一个典型的 Maven 构建生命周期是 ...

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

    三套生命周期 Maven有3套相互独立的生命周期,用户可以调用某个生命周期的阶段,而不会对其他生命周期产生影响. 每个生命周期包含一些有先后顺序的阶段,后面的阶段依赖于前面的阶段,意味着用户调用后面的 ...

  7. maven核心概念--生命周期

    maven有一个命令,mvn package,该命令行并没有指定一个插件目标, 而是指定了一个Maven生命周期阶段.一个阶段是在被Maven称为"构建生命周期"中的一个步骤.生命 ...

  8. maven的三大生命周期

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

  9. Maven项目的生命周期

    Maven中存在三套生命周期,每一套生命周期相互独立,互不影响.在一套生命周期内,执行后面的命令前面的命令会自动执行. CleanLifeCycle:清理生命周期 mvn clean DefaultL ...

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

    项目生命周期 清理 初始化 编译 測试 打包 部署 三套生命周期 1.clean pre-clean 运行一些须要在clean之前完毕的工作 clean 移除全部上一次构建生成的文件 post-cle ...

随机推荐

  1. 学习笔记:腾讯云——服务器mysql操作

    1.进入数据库 (注意:在linux系统下要进入mysql所在的文件夹下才能打开数据库) 操作1:进入到指定目录下 命令行:cd /opt/lampp/bin 操作2:进入到数据库 命令行:./mys ...

  2. ArcGIS Server 标准版和高级版在Web3D的区别

  3. Excel里生成GUID

    Private Declare Function CoCreateGuid Lib "ole32" (id As Any) As Long    Private Function ...

  4. 在Android中引入Java8的lambda表达式

    我用的是retrolambda这个插件,下面来说下如何添加它. 项目地址:https://github.com/evant/gradle-retrolambda 在根项目的build.gradle中添 ...

  5. 属性(@property)、@synthesize

    先前我们学的实例变量是这样的 { int _age; int _height; int age; } 后来学属性 @property int age; 看到@property 会自动编译生成某个成员变 ...

  6. Android Content Provider基础

    Android Content Provider基础 Content Providers Content providers管理对一个结构化的数据集合的访问.它们封装了数据,并且提供了保护数据安全性的 ...

  7. 腾讯bugly 的crash 上报和umeng的比较

    说到crash上传工具,大家肯定会第一时间想到umeng,不错,umeng 是最早推出 crash 上报的工具之一,在刚推出来的时候,特别受到ios开发人员的喜爱. 因为个时候,内存是手动管理的,很容 ...

  8. 获取在线APP的素材图片

    1.打开iTunes,搜索并下载APP 2.打开下载的APP的路径 4.对ipa包进行解压 5.找到app,右键"显示包内容"进行查看 6.结果

  9. OC中的特有语法

    一. 分类-Category 1. 基本用途 如何在不改变原来类模型的前提下,给类扩充一些方法?有2种方式 l 继承 l 分类(Category) 2. 格式 分类的声明 @interface 类名  ...

  10. Java 引用

    Java 对象的引用方式有如下四种,这四种方式主要是为了给垃圾回收提供更灵活的操作: 1.强引用,最常见的引用方式,当一个对象被一个或一个以上的引用变量引用时,它处于可达状态,这时不会被垃圾回收器回收 ...