maven的核心:生命周期和阶段

maven的核心:生命周期和阶段,图示

QQ图片20190416183316.png

maven将工程(Project)的构建过程理解为不同的生命周期(LifeCycle)和阶段(Phase)。 在工程的构建过程中,存在着不同的生命周期,这些生命周期互相独立,之间也没有一定的顺序关系。 每个生命周期又划分为不同的阶段(Phase)。阶段之间有明确的顺序关系, 同一生命周期内的阶段必须按顺序依次执行。

maven内置了三个生命周期,并为每个生命周期内置了一些阶段。 下面列举出maven内置的生命周期及主要的阶段: 

QQ图片20190416183345.png

  • default:构建(Build)

    1. validate:验证项目是否正确,所有必需的信息是否可用。

    2. compile:编译项目中的代码。

    3. test:用相关的单元测试框架测试编译后的代码,这些运行的测试并不会随项目打包和布署。

    4. package:将编译后的代码打包成相应的格式文件,如jar包。

    5. integration-test: 如果需要在一个综合环境中运行我们的测试,这个阶段将会运行和布署项目到该环境中。

    6. verify: 检查项目的包是否正确和符合要求。

    7. install:将包安装到本地maven仓库,可以让其他项目作为依赖使用该包。

    8. deploy:将包发布到远程的maven仓库,并提供给其他开发者使用。

  • clean:清理

    1. pre-clean 准备清理

    2. clean 执行清理工作

    3. post-clean 执行清理后的后续工作

  • site:生成项目文档和站点

    1. pre-site 准备生成

    2. site 生成项目站点和文档

    3. post-site 执行生成文档后的后续工作

    4. site-deploy 发布项目文档

更详细的phase说明参考: http://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html#Lifecycle_Reference