官网: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. Ubuntu中搭建git

    1.配置用户名和邮箱 git config --global user.name "xiaoming" git config --global user.email "x ...

  2. Oracle运算符收录(易忘记,但是又很重要的运算符)

    Create Table Test6( id ), name ), age ), sex ) ) 1. ||   符 字符串连接字符串,注意:文字和日期一定嵌入在单引号里面 select ID,Nam ...

  3. window下,nodejs 安装 http-server,开启命令行HTTP服务器

    第一步:http://nodejs.cn/  官网下载安装文件,安装nodejs: 第二步:运行中输入cmd进入命令行模式,输入  node -v ,显示版本号,代表安装成功: 第三步:在node命令 ...

  4. android 拍照和从相册选择组件

    android 拍照及从相册选择组件 单独封装到一个 activity 中便于更好的复用 拍照或从相册选择成功后使用 EventBus 发出广播回传图片路径,和调用者充分解耦合 根据传入参数支持裁剪和 ...

  5. TortoiseGit学习系列之TortoiseGit是什么?

    写该文章目的 肯定有人会遇到这样的问题: 最近换了一份新工作,新公司的源码管理都是使用GIT,习惯了之前的TFS和SVN进行项目源码管理和团队开发,第一次使用GIT进行团队开发和源码管理,颇有一些不习 ...

  6. 解决JavaScript拖动时同时触发点击事件的BUG

    在做在线地图项目的时候,在给marker点绑定事件时,因为有点击事件click,同时又存在拖动dragEnd事件,首先没有重大缺陷,就是在用户在点击的时候,有时候本想是点击,但是他触发了drag的事件 ...

  7. Jedis连接redis

    今天与大家分享下,Jedis连接池使用.先看一段JAVA 代码:         JedisPoolConfig config = new JedisPoolConfig();         con ...

  8. [tools]转载汇总

    1. 发送请求工具—Advanced REST Client Advanced REST Client是Chrome浏览器下的一个插件,通过它可以发送http.https.WebSocket请求.

  9. 模拟登陆Github示例

    首先进入github登录页:https://github.com/login 输入账号密码,打开开发者工具,在Network页勾选上Preserve Log(显示持续日志),点击登录,查看Sessio ...

  10. java并发编程(2)线程池的使用

    一.任务和执行策略之间的隐性耦合 Executor可以将任务的提交和任务的执行策略解耦 只有任务是同类型的且执行时间差别不大,才能发挥最大性能,否则,如将一些耗时长的任务和耗时短的任务放在一个线程池, ...