当前位置 > it书童 > java > 正文

maven 生命周期与概念模型

java it书童 2020-11-04 10:22:55 0赞 0踩 321阅读 0评论

生命周期

maven 对项目构建过程分为三套相互独立的生命周期,请注意这里说的是“三套”,而且“相互独立”,

这三套生命周期分别是:

  • Clean Lifecycle 在进行真正的构建之前进行一些清理工作。

  • DefaultLifecycle 构建的核心部分,编译,测试,打包,部署等等。

  • Site Lifecycle 生成项目报告,站点,发布站点。

站点生命周期应用不多

默认生命周期的每一站都是对项目进行构建,只不过是构建的程度不一样,而且有一个重要的特点,执行后面的命令时,会将前面的命令都自动执行一次

可以类比人的 童年-少年-青年-中年-老年 每个阶段都意味着度过了前面的阶段

概念模型

Maven 包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段 (phase)中插件(plugin)目标(goal)的逻辑

项目对象模型 (Project Object Model)

每个 maven 工程都有一个 pom.xml 文件,通过 pom.xml 文件定义项目的坐标、项目依赖、项目信息、插件目标等

依赖管理系统(Dependency Management System)

通过maven的依赖管理对项目所依赖的jar 包进行统一管理。

比如:项目依赖 junit4.9,通过在 pom.xml 中定义 junit4.9 的依赖即使用 junit4.9

<dependency>
  <!-- junit 的项目名称 --> 
  <groupId>junit</groupId> 
  <!-- junit 的模块名称 --> 
  <artifactId>junit</artifactId> 
  <!-- junit 版本 --> 
  <version>4.9</version>
  <!-- 依赖范围:单元测试时使用 junit -->
  <scope>test</scope> 
</dependency>

一个项目生命周期(Project Lifecycle)

使用 maven 完成项目的构建,项目构建包括:清理、编译、测试、部署等过程,maven 将这些过程规范为一个生命周期,如下所示是生命周期的各个阶段

一组标准集合

maven 将整个项目管理过程定义一组标准,比如:通过 maven 构建工程有标准的目录结构,有标准的生命周期阶段、依赖管理有标准的坐标定义等

插件(plugin)目标(goal)

maven 管理项目生命周期过程都是基于插件完成的

关于我
一个文科出身的程序员,追求做个有趣的人,传播有价值的知识,微信公众号主要分享读书思考心得,不会有代码类文章,非程序员的同学请放心订阅
转载须注明出处:https://www.itshutong.com/articles/800