官网:http://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html

  maven有三套相互独立的生命周期,每个生命周期中又包含各个不同的阶段,这些阶段是有序的,执行某个阶段时,会将此生命周期此阶段前所有阶段都执行一遍。如:执行default周期的install会将validate到install都执行一遍。

clean:清理项目

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

  clean    执行清理操作清理掉上次生成的文件

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

default:构建项目,核心

  validate           验证项目是否正确,必须的信息是否可用

  initialize            初始化构建状态,设置属性,创建目录

  generate-sources        生成源码,用于后期编译等

  process-sources      处理源码,如过滤一些值 

  generate-resources      生成资源文件

  process-resources      将资源文件放到指定目录,等待打包

  compile           编译项目代码

  process-classes        生成编译的文件,例如java的增强类

  generate-test-sources    生成用于编译的测试代码

  process-test-sources     生成用于便于的测试资源文件

  generate-test-resources  创建资源,准备测试

  process-test-resources    拷贝和处理测试资源到指定目录

  test-compile          编译项目测试代码,将src/test/java目录下的java文件输出至项目输出的测试claspath中

  process-test-classes     生成用于便于的测试资源文件

  test            使用单元测试框架进行测试,测试代码不会被打包或者部署

  prepare-package      打包前的准备工作

  package          接受编译好的代码,打包成可以发布的格式,如jar、war等

  pre-integration-test    进行集成测试前需要进行的操作,可能涉猎到设置环境

  integration-test       进行处理和部署包,如果集成测试环境需要的话

  post-integration-test     执行集成测试后需要进行的操作,包括清理环境

  verify            运行任何检查以验证包是否符合标准

  install           将打包好的内容发布至本地仓库

  deploy            将打包好的数据发布至远程仓库

site:发布站点

  pre-site          执行一些在生成项目站点之前需要完成的工作

  site            生成项目站点的文档

  post-site          执行一些在生成项目站点之后需要完成的工作

  site-deploy         将生成的项目站点发布到服务器上

我们平时在eclipse上执行clean install命令就相当于走了clean(preclean~clean)和default(validate~install)两个生命周期的内容。

maven插件的使用也是与生命周期息息相关的,之前记得搜到过一篇博客说的特别好:生命周期就相当于是一系列接口定义,而插件就是这些接口的具体实现。

over,下一章写一下和插件和生命周期相关的东西。

maven学习(四)maven的生命周期的更多相关文章

  1. Maven学习笔记(六):生命周期与插件

    何为生命周期:      Maven的生命周期就是为了对全部的构建过程进行抽象和统一.Maven从大量项目和构建工具中学习和反思,然后总结了一套高度完好的.易扩展的生命周期.这个生命周期包括了项目的清 ...

  2. Maven学习(三)生命周期

    maven有三套生命周期 1.clean       清理项目 2.default     构建项目 3.site           建立项目站点 每套生命周期都包含了一些阶段,这些阶段是有序的,后 ...

  3. Maven学习小结(七 生命周期[转])

    Maven2的阶段(生命周期)说明:Maven2拥有三套独立的生命周期,Maven的命令也是基于这些生命周期来说的.1.clean:清理先前构建的构件,又分为下面三个下阶段: a.pre-clean ...

  4. Maven学习(四)-----Maven中央存储库

    Maven中央存储库 当你建立一个 Maven 的项目,Maven 会检查你的 pom.xml 文件,以确定哪些依赖下载.首先,Maven 将从本地资源库获得 Maven 的本地资源库依赖资源,如果没 ...

  5. Fragment(四)Fragment生命周期分析(转)

    Fragment(四)Fragment生命周期分析 转载请注明:http://blog.csdn.net/liaoqianchuan00/article/details/24271607   例子一 ...

  6. Angular 个人深究(四)【生命周期钩子】

    Angular 个人深究(四)[生命周期钩子] 定义: 每个组件都有一个被 Angular 管理的生命周期. Angular 创建它,渲染它,创建并渲染它的子组件,在它被绑定的属性发生变化时检查它,并 ...

  7. 微信小程序把玩(四)应用生命周期

    原文:微信小程序把玩(四)应用生命周期 App() 函数用来注册一个小程序,注意必须在 app.js 中注册,且不能注册多个. 使用方式也跟Android中的Application中初始化一些全局信息 ...

  8. Maven学习(十三)-----Maven 构建生命周期

    Maven 构建生命周期 构建生命周期是什么? 构建生命周期阶段的目标是执行顺序是一个良好定义的序列. 这里使用一个例子,一个典型的 Maven 构建生命周期是由下列顺序的阶段: 阶段 处理 描述 准 ...

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

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

  10. spring源码学习(四)-spring生命周期用到的后置处理器

    生命周期的九大后置处理器 第一次调用后置处理器org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory# ...

随机推荐

  1. pip安装Python依赖环境

    将包依赖信息保存在requirements.txt文件 pip freeze > requirements.txt 根据依赖文件安装依赖 pip install -r requirements. ...

  2. 高版本sonar安装遇到的坑-sonar 6.7.5

    最近安装了6.7.5版本的sonar,发现里面的坑还是很多,下面列举下遇到的坑 sonar插件地址:https://docs.sonarqube.org/display/PLUG/Plugin+Lib ...

  3. jacvascript 保留小数点

    //四舍五入保留2位小数(若第二位小数为0,则保留一位小数) function keepTwoDecimal(num) {  var result = parseFloat(num);  if (is ...

  4. 并发编程之synchronize

    synchronized是Java中的关键字,是一种常用的线程同步锁. 用法 注意:在理解synchronized时,要知道一个核心点,synchronized锁定的不是代码,而是对象.使用synch ...

  5. find ip from hostname or find hostname from ip

    1. find ip from hostname ping <hostname> 2.fin hostname from ip nslookup <ip>

  6. UILable 标题加粗代码

    UILable 标题加粗代码: 加粗; [UILabel setFont:[UIFont fontWithName:@"Helvetica-Bold" size:18]]; 加粗并 ...

  7. svn update 报错,必须先cleanup,然后cleanup失败解决方法

    一 问题描述: 1.svn update失败,提示已被locked,请执行cleanup 2.执行svn cleanup,提示cleanup failed to process the followi ...

  8. maven配置编译器的版本

    发现每次启动idea时,项目里很多红色错误,都是的编译器版本不对,每次都要手动修改. 其实在pom里把默认编译器版本加进去就好了. <build> <plugins> < ...

  9. Linux 上安装Docker 并部署netcor2.1

    述 容器,顾名思义是用来存放并容纳东西的器皿: 而容器技术伴着Docker的兴起也渐渐的映入大家的眼帘,它是一个抽象的概念,同时也是默默存在世上多年的技术,不仅能使应用程序间完全的隔离,而且还能在共享 ...

  10. php数组操作,js数组操作

    俩语言一块儿学老混.整理一下. php: 1.声明: 1)$arr1 = array('key1' => 'value1', 'key2' => 'value2' ...);//关联数组, ...