看gradle复习知识点的时候,发现这块以前记录过的丢失了,现在重新补一下,记录复习!
生命周期你可以理解为:构建工程的步骤。而Maven生命周期你就可以理解为:构建项目的过程中,清理、初始化、编译、打包、测试、部署等构建步骤。笼统的讲就是:为了对所有的构建过程进行抽象和统一。大多数人会在说maven生命周期的时候,直接说其主要的阶段: clean,compile,test,package,verify,install 和 deploy 这几个阶段,但其实它并不是全部。
在Maven的生命周期中有三套相互独立的生命周期,是不是有点绕口?没错,这三套生命周期是相互独立的!也就是说,你可要仅调用clean来清理工作目录,仅调用site来生成站点。当然你也可以直接运行 mvn clean install site运行所有这三套生命周期。
这三套生命周期分别是:
在clean生命周期中存在着clean阶段,每套生命周期都由一组阶段, 例如:命令行输入的命令就对应于一个特定的阶段。mvn clean 中的clean就对应着Clean生命周期中clean阶段。 Clean生命周期一共包含了三个阶段:
pre-clean)clean)post-clean)validate)initialize)generate-sources )process-sources)generate-resources )process-resources )compile)process-classes )generate-test-sources )process-test-sources )generate-test-resources )process-test-resources )test-compile )process-test-classes )prepare-package )package )pre-integration-test )integration-test )post-integration-test )verify )install )deploy )运行任何一个阶段的时候,它前面的所有阶段都会被运行,这也就是为什么我们运行mvn install 的时候,代码会被编译,测试,打包。此外,Maven的插件机制是完全依赖Maven的生命周期的,而gradle就提出了增量构建,具体与其输入、task、输出有关,所以gradle的构建效率也比maven快。
pre-site)pre-site)post-site)site-deploy )