Maven进价:Maven的生命周期阶段
一、Maven的生命周期
Maven的生命周期就是对所有的构建过程进行抽象和统一。包含了项目的清理、初始化、编译、测试、打包、集成测试、验证、部署和站点生成等几乎所有的构建步骤。
Maven的生命周期是抽象的,即生命周期不做任何实际的工作,实际任务由插件完成,类似于设计模式中的模板方法。
 
二、三套生命周期
Maven有三套相互独立的生命周期,分别是clean、default和site。每个生命周期包含一些阶段(phase),阶段是有顺序的,后面的阶段依赖于前面的阶段。
1、clean生命周期:清理项目,包含三个phase。
1)pre-clean:执行清理前需要完成的工作
2)clean:清理上一次构建生成的文件
3)post-clean:执行清理后需要完成的工作
2、default生命周期:构建项目,重要的phase如下。
1)validate:验证工程是否正确,所有需要的资源是否可用。
2)compile:编译项目的源代码。
3)test:使用合适的单元测试框架来测试已编译的源代码。这些测试不需要已打包和布署。
4)Package:把已编译的代码打包成可发布的格式,比如jar。
5)integration-test:如有需要,将包处理和发布到一个能够进行集成测试的环境。
6)verify:运行所有检查,验证包是否有效且达到质量标准。
7)install:把包安装到maven本地仓库,可以被其他工程作为依赖来使用。
8)Deploy:在集成或者发布环境下执行,将最终版本的包拷贝到远程的repository,使得其他的开发者或者工程可以共享。
3、site生命周期:建立和发布项目站点,phase如下
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以及之前所有阶段
 
四、m2eclipse和生命周期
1、m2eclipse中预置的mvn命令
右键maven项目或pom.xml文件>Run As 可以看到预置的mvn命令
2、自定义mvn命令
单击 上图中的maven Build...,自定义命令 mvn clean install:
定义完成后,点击maven Build,可以看到定义好的命令:
 
 
 

maven(1)的更多相关文章

  1. 使用IntelliJ IDEA 配置Maven(转)

    1. 下载Maven 官方地址:http://maven.apache.org/download.cgi 解压并新建一个本地仓库文件夹 2.配置本地仓库路径 3.配置maven环境变量 4.在Inte ...

  2. maven(04)--一个简单的项目

    简单介绍 一个maven项目,使用hibernate框架,实现向mysql数据库中添加和获取操作,其他操作也是类似 如果你没有hibernate,那么也不要紧,这里主要介绍如何在一个maven项目中引 ...

  3. Maven(一)环境搭建

    网上已经有很多Maven学习的笔记和文章了,但是不自己亲自玩一玩,踩踩坑,证明不了自己到底能不能搞定它! 今天自己亲自搭建了一下环境,感觉基本的使用应该是可以满足了. 使用背景: 安装环境:Windo ...

  4. Maven(二)核心知识点

    Maven有一些核心的知识点需要了解,比如坐标.仓库.插件.生命周期等概念,这里将依次解释. 坐标 Maven以构件来组成基本的控制单元,而定义这个构件的标示,Maven给定义为“坐标”.坐标是Mav ...

  5. maven(一)初步搭建,项目结构

    一.环境准备 java环境, jdk 1.5 以上 MyEclipse集成工具,我装的是8.5 版本 二.快速安装及配置 1.下载maven: http://maven.apache.org/docs ...

  6. maven(02)--简单的命令操作

    使用maven有什么好处呢? 这个问题留到该文的末尾进行总结>v< maven测试 在上一篇文章中介绍了如何简单的编译一个java文件,执行mvn compile命令后,你会发现在你新建的 ...

  7. maven(03)

    修改本地库路径 windows下maven默认路径应该是${user.home}/.m2/repository 修改方法:找到maven安装的根路径,里面有一个conf的文件夹,打开里面有一个sett ...

  8. Maven(二)Maven项目的创建(命令、myeclipse)及生命周期

    上一篇给大家介绍了Maven的概念和仓库的一些信息,接下来给大家分享一下使用命令和MyEclipse创建Maven项目 一.使用命令管理Maven项目 1.1.创建Maven java项目 1)创建一 ...

  9. Maven(三)在Eclipse中使用Maven与Maven坐标

    这一篇讲解一下在eclipse中使用maven,在一些高版本的eclipse中是自带maven插件的.所以这里就不在讲解怎么安装插件了. 接下来我们创建一个MavenFirst项目 一.在Eclips ...

  10. Maven(二)名词、命令、仓库、依赖、私服

    这篇文章将Maven其他内容做一个介绍. 一.名词 ①:localRepository 本地仓库路径,位于maven/conf/settings.xml中. ②:project  项目. ③:pom  ...

随机推荐

  1. Centos 7.2天兔(Lepus 3.8)数据库监控系统部署

    天兔(Lepus 3.8)数据库监控系统部署 转载自:https://blog.csdn.net/m0_38039437/article/details/79613260 一.安装LAMP基础环境 首 ...

  2. java普通项目打包成可执行jar文件时如何添加第三包

    在java的web项目中,引用第三方包的时候非常简单.因为在web项目上中,默认有一个web-inf文件夹.web-inf文件夹下有一个lib文件夹,如果有用到第三方包,直接丢进去就行了.但是对于普通 ...

  3. [BZOJ1415][NOI2005]聪聪与可可

    Description Input 数据的第1行为两个整数N和E,以空格分隔,分别表示森林中的景点数和连接相邻景点的路的条数. 第2行包含两个整数C和M,以空格分隔,分别表示初始时聪聪和可可所在的景点 ...

  4. ArrayList源码解析[一]

    ArrayList源码解析[一] 欢迎转载,转载烦请注明出处,谢谢. https://www.cnblogs.com/sx-wuyj/p/11177257.html 在工作中集合list集合用的相对来 ...

  5. Spring Boot项目中如何定制HTTP消息转换器

    在构建RESTful数据服务过程中,我们定义了controller.repositories,并用一些注解修饰它们,但是到现在为止我们还没执行过对象的转换--将java实体对象转换成HTTP的数据输出 ...

  6. vue-cli 3.x 自定义插件并发布到 npm

    干货转载——https://www.cnblogs.com/wisewrong/archive/2018/12/28/10186611.html 全是知识点呐 赶紧记下来啊 一.调整项目结构 首先用 ...

  7. angular之模块开发二

    一.模块化规范 1.服务器端规范 CommonJS--node.js 2.浏览器端规范 AMD--RequireJS 国外相对流行 CMD--SeaJS 国内相对流行 3.模块化框架实现 CMD实现- ...

  8. 那些惊艳的 GIS 轮子

    一.前言 GIS 涉及测绘.几何拓扑.人文社科等多方面的科学知识.在 .Net 平台下有着许多优秀的开源产品,比如:MapWindow.SharpMap.WorldWind等.而在这其中,Coordi ...

  9. 如何在python文件中测试sql语句

    在manage.py的同级目录下新建一个run.py import os if __name__ == '__main__': #加载Django项目的配置信息 os.environ.setdefau ...

  10. ubuntu12.04 添加程序启动器

    方法: 1. 在/usr/share/applications目录下创建eclipse启动器配置文件 cd /usr/share/applications vim eclipse.desktop 2. ...