第七章 生命周期和插件
7.2 生命周期详解
7.2.1 三套生命周期
Maven拥有三套相互独立的生命周期,它们分别为clean、default和site。clean生命周期的目的是清理项目,default生命周期的目的是构建项目,而site生命周期的目的是建立项目站点。
7.2.2 clean生命周期
包含三个阶段是:
1) pre-clean执行一些清理前需要完成的工作。
2) clean清理上一次构建生成的文件。
3) post-clean执行一些清理后需要完成的工作。
7.2.3 default生命周期
- validate
- initialize
- generate-sources
- process-sources处理项目主资源文件。一般来说,是对src/main/resources目录的内容进行变更替换等工作后,复制到项目输出的主classpath目录中。
- generate-resources
- process-resources
- compile编译项目的主源码。一般来说,是编译src/main/java目录下的Java文件至项目输出的主classpath目录中。
- process-classes
- generate-test-sources
…
7.2.4 site生命周期
- pre-site执行一些在生成项目站点之前需要完成的工作。
- site生成项目站点文档。
- post-site执行一些在生成项目站点之后需要完成的工作。
- site-deploy将生成的项目站点发布到服务器上。
7.2.5 命令行与生命周期
从命令行执行Maven任务的最主要方式就是调用Maven的生命周期阶段。需要注意的是,各个生命周期是相互独立的,而一个生命周期的阶段是有前后依赖关系的。
- mvn clean:该命令调用clean生命周期的clean阶段。实际执行的阶段为clean生命周期的pre-clean和clean阶段。
- mvn test:该命令调用default生命周期的test阶段。实际执行的阶段为default生命周期的validate、initialize等,直到test的所有阶段。
- mvn clean install:该命令调用clean生命周期的clean阶段和default生命周期的install阶段。实际执行的阶段为clean生命周期的pre-clean、clean阶段、以及default生命周期的从validate至install 的所有阶段。该命令结合了两个生命周期,在执行真正的项目构建之前清理项目是一个很好的实践。
- mvn clean deploy site-deploy:该命令调用clean生命周期的clean阶段、default生命周期的deploy阶段,以及site生命周期的site-deploy阶段。实际执行的阶段为clean生命周期的pre-clean、clean阶段,default生命周期的所有阶段,以及site生命周期的所有阶段。该命令结合了Maven所有三个生命周期,且deploy为default生命周期的最后一个阶段。site-deploy为site生命周期的最后一个阶段。
7.3 插件目标
通用写法:插件:目标。
转载于:https://blog.51cto.com/jawsy/544647