Maven-04: 三套生命周期

时间:2022-04-17 14:49:37

Maven的生命周期不是一个整体,而是拥有三套相互独立的生命周期,它们分别是clean,default和site。

clean生命周期的目的是清理项目。

default生命周期的目的是构建项目。

site生命周期的目的是建立项目站点。

----------------------------------------------------------------------------------

clean生命周期

1) pre-clean: 执行一些清理前需要完成的工作。

2) clean:清理上一次构建生成的文件。

3) post-clean:执行一些清理后需要完成的工作。

----------------------------------------------------------------------------------

default生命周期

1) validate

2) initialize

3) generate-sources

4) process-sources:处理项目主资源文件。一般来说,是对src/main/resources目录的内容进行变量替换等工作后,复制到项目输出的主classpath目录中。

5) generate-resources

6) process-resources

7) compile: 编译项目的主代码。一般来说,是编译src/main/java目录下的java文件至项目输出的主classpath目录中。

8) process-classes

9) generate-test-sources

10) process-test-sources: 处理项目测试资源文件。一般来说,是对src/test/resources目录的内容进行变量替换等工作后,复制到项目输出的测试classpath目录中。

11) generate-test-resources

12) process-test-resources

13) test-compile: 编译项目的测试代码。一般来说,是编译src/test/java目录下的java文件至项目输出的测试classpath目录中。

14) process-test-classes

15) test: 使用单元测试框架运行测试,测试代码不会被打包或部署。

16) prepare-package

17) package: 接受编译好的代码,打包成可发布的格式,如jar。

18) pre-integration-test

19) integration-test

20) post-integration-test

21) verify

22) install: 将包安装到Maven本地仓库,供本地其他Maven项目使用。

23) deploy:将最终的包复制到远程仓库,供其他开发人员和Maven项目使用。

----------------------------------------------------------------------------------------------------------------

site生命周期

1) pre-site: 执行一些在生成项目站点之前需要完成的工作。

2) site: 生成项目站点文档。

3) post_site: 执行一些在生成项目站点之后需要完成的工作。

4) site-deploy: 将生成的项目站点发布到服务器上。