maven学习

maven学习

什么叫做构建

  构建是源代码生成可执行应用程序的过程自动化程序,包括、编译、连接、代码打包成可用或者可执行的形式,为了解决大型项目中构建复杂度高等问题

maven三个构建生命周期的核心概念

  maven核心生命周期有三个、我们称之为default/clean/site,每个生命周期都由不同的阶段组成,并且提供不同的自动化服务:default(build)主要用于处理项目部署;clean用于清理项目;site处理项目站点文档的创建。

default项目阶段解读
  1. valide - 验证项目必要信息是否可用
  2. compile - 编译项目的源代码
  3. test - 使用合适的单元测试框架测试编译的源代码。这些测试不要求代码已被打包或部署
  4. package - 获取已编译的代码并将其打包为可分发的格式,例如 JAR。
  5. verify - 对集成测试结果进行一些检查,以确保满足质量标准
  6. install - 将软件包安装到本地存储库中,以便在本地用作其他项目的依赖项
  7. deploy - 在构建环境中完成,将包复制到远程存储库用于与其他开发人员和项目共享。

pom文件基本信息解读

  • groupId:创建项目的组织或公司的唯一标识符。groupId 是项目的关键标识符之一,通常基于组织的完全限定域名。如com.shiyanlou
  • artifactId:此项目在组中的唯一标识符。
  • packaging:包类型(例如 JAR,WAR,EAR 等)。

其中groupId、artifactId、version是项目的坐标,每个项目都有自己的坐标,并且是唯一的,当其他项目需要使用该项目时,才可以准确的引用,使用的方式也就是在dependencies元素中添加dependency,dependency元素中填写需要的外部依赖。

定制构建过程、maven插件的使用

  当进行构建过程定制化的时候,只需要在maven中添加和重新配置插件信息即可。例如如果想要运行web项目只需要根据构建流程,添加jetty插件就可以达到以jetty-mvn命令启动web项目的目的

dependencies 和 dependencyManagement 有什么区别?

  dependencyManagement 用在父 pom 中,为的是统一子 pom 文件中的版本,当子 pom 需要使用某个依赖时,直接引入依赖即可,不用定义版本号,直接使用父 pom 的 dependencyManagement 定义的版本号。除了 dependencies 和 dependencyManagement,还有 plugins 和 pluginManagement,他们相似,只是 plugins 和 pluginManagement 用于管理插件。

maven 说明

  maven是定义自动化构建流程,所以会基于该流程定义文件、坐标、项目目录以及各种输出默认格式、当执行构建命令的时候,会在其自定义的阶段在自定义的目录进行输出;以maven进行项目管理、开发、测试、编码,一定要符合maven规范。

上一篇:spring boot starter 如何引入 spring 包?


下一篇:记录一次子模块依赖报红