> 文章列表 > Maven生命周期

Maven生命周期

Maven生命周期

构建流程

Maven内置了三个构建生命周期:default、clean 和 site。生命default周期处理您的项目部署,clean生命周期处理项目清理,而site生命周期处理项目网站的创建。

LifeCycle和Phase

构建生命周期由阶段组成,这些构建生命周期中的每一个都由不同的构建阶段列表定义,其中构建阶段代表生命周期中的一个阶段。
default生命周期默认有以下阶段

  • validate- 验证项目是正确的,所有必要的信息都可用
  • compile- 编译项目的源代码
  • test- 使用合适的单元测试框架测试编译后的源代码。这些测试不应要求打包或部署代码
  • package- 获取编译后的代码并将其打包为可分发的格式,例如 JAR。
  • verify- 对集成测试的结果进行任何检查以确保满足质量标准
  • install- 将包安装到本地存储库中,以在本地用作其他项目的依赖项
  • deploy- 在构建环境中完成,将最终包复制到远程存储库,以便与其他开发人员和项目共享。

实际开发过程中,经常使用的命令有:
mvn clean:清理所有生成的class和jar;
mvn clean compile:先清理,再执行到compile;
mvn clean test:先清理,再执行到test,因为执行test前必须执行compile,所以这里不必指定compile;
mvn clean package:先清理,再执行到package。

goal

每个包都包含一个绑定到特定阶段的目标列表。例如,jar打包会将以下目标绑定到默认生命周期的构建阶段。
Maven生命周期

Plugins

将goal添加到阶段的方法是在项目中配置插件。
使用display插件,触发其绑定的goal(display:time)运行在process-test-resources阶段

 <plugin><groupId>com.mycompany.example</groupId><artifactId>display-maven-plugin</artifactId><version>1.0</version><executions><execution><phase>process-test-resources</phase><goals><goal>time</goal></goals></execution></executions></plugin>