【Maven】项目管理利器Maven(五)——生命周期和插件

一、前言

      上一篇博客中,小编向大家介绍了Maven常用的一些命令,在这篇博客中,小编向大家介绍生命周期和插件 。

      在Maven的日常使用中,命令行的输入往往对应了生命周期,如mvn package就表示执行默认生命周期阶段的package。Maven的生命周期是抽象的,其实际行为都是由插件完成的,如package阶段的任务可能会由maven-jar-plugin完成。生命周期和插件两者协同工作,密不可分。

二、三套生命周期

      刚开始学习 maven的时候,都不知道有什么生命周期,以为从开始编译、测试、打包、部署整个都是一个完整的流程。其实,早在Maven出现之前,项目构建的生命周期就已经存在了,软件开发人员每天都对项目进行清理、编译、测试和部署。Maven的生命周期就是为了对所有的构建过程进行抽象和统一。Maven从大量的项目和构建工具中学习和反思,然后总结了一套高度完善、易拓展的生命周期。这个生命周期包括了清理、初始化、编译、测试、打包、集成测试、验证、部署和站点生成等几乎所有的构建步骤。

      Maven拥有三套相互独立的生命周期,他们分别是clean,default 和site。clean生命周期的目的是清理项目,default生命周期的目的是构建项目,而site生命周期的目的是建立项目站点。

这里写图片描述

2.1 clean生命周期

      clean生命周期的目的是清理项目,包含了三个阶段:

  1. pre-clean 执行一些清理前需要完成的工作
  2. clean 清理上一次构建成功的文件,清理target文件
  3. post-clean执行一些清理后需要完成的工作

2.2 default生命周期

      default生命周期定义了真正构建时所需要执行的步骤。是最核心的部分。

default 生命后勤解释
validate验证工程是否正确,所需的信息是否完整
initialize初始化构建平台,例如:设置properties或创建目录
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编译测试源代码(默认是test目录下)
process-test-class
test执行单元测试
prepare-package
package将工程文件打包为指定的格式,例如JAR,WAR等
pre-integration-test
integration-test集成测试
post-integration-test
verify检查package是否有效、符合标准
install将包安装至本地仓库,以让其它项目依赖。
deploy将最终的包复制到远程的仓库,以让其它开发人员与项目共享。

2.3 site生命周期

      site生命周期的目的是建立和发布项目站点,maven能够基于POM锁包含的信息,自动生成一个友好的站点,方便团队交流和发布项目信息。

  1. pre-site 执行一些在生成项目站点之前需要完成的工作。
  2. site生成项目站点文档
  3. post-site 执行一些在生成项目站点之后需要完成的工作。
  4. site-deploy 将生成的项目站点发布到服务器上。

三、插件

      maven管理生命周期过程都是基于插件完成的。定位到:%本地仓库%\org\apache\maven\plugins,可以看到一些下载好的插件:

这里写图片描述

四、小结

      通过对Maven的生命周期理解,可以更加深刻的理解每个阶段的程序运行。对程序的开发有很大的帮助。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 13
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

你个佬六

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值