Files
notes_estom/maven/04 maven生命周期.md
2022-11-07 15:43:23 +08:00

2.4 KiB
Raw Permalink Blame History

1 命令构成

生命周期、插件和目标

基本命令

  • 主命令
  • 插件
  • 子命令

  • 添加-Dmaven.test.skip=true表示跳过执行。

2 maven项目的生命周期

maven项目开发主要包括以下三个生命周期

clean生命周期

清理项目包含三个phase。

  1. pre-clean执行清理前需要完成的工作
  2. clean清理上一次构建生成的文件
  3. post-clean执行清理后需要完成的工作

default生命周期

构建项目重要的phase如下。

  1. validate验证工程是否正确所有需要的资源是否可用。
  2. compile编译项目的源代码。
  3. test使用合适的单元测试框架来测试已编译的源代码。这些测试不需要已打包和布署。
  4. Package把已编译的代码打包成可发布的格式比如jar。
  5. integration-test如有需要将包处理和发布到一个能够进行集成测试的环境。
  6. verify运行所有检查验证包是否有效且达到质量标准。
  7. install把包安装到maven本地仓库可以被其他工程作为依赖来使用。
  8. Deploy在集成或者发布环境下执行将最终版本的包拷贝到远程的repository使得其他的开发者或者工程可以共享。

site生命周期

建立和发布项目站点phase如下

  1. pre-site生成项目站点之前需要完成的工作
  2. site生成项目站点文档
  3. post-site生成项目站点之后需要完成的工作
  4. site-deploy将项目站点发布到服务器

3 maven命令

三个生命周期是独立的。maven命令是按顺序依次执行的。每次执行都会将同一周期之前的命令执行一遍。

阶段 处理 描述
验证 validate 验证项目 验证项目是否正确且所有必须信息是可用的
编译 compile 执行编译 源代码编译在此阶段完成
测试 Test 测试 使用适当的单元测试框架例如JUnit运行测试。
包装 package 打包 创建JAR/WAR包如在 pom.xml 中定义提及的包
检查 verify 检查 对集成测试的结果进行检查,以保证质量达标
安装 install 安装 安装打包的项目到本地仓库,以供其他项目使用
部署 deploy 部署 拷贝最终的工程包到远程仓库中,以共享给其他开发人员和工程