本篇知识来源于大佬博客以及菜鸟教程。
1.简介
Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的项目管理工具软件。(它是一个强大的Java项目构建工具,基于POM(项目对象模型)文件,可用于项目构建、依赖模块管理和Javadoc生成等。)
2.构建工具
构建工具是软件构建过程自动化的一种工具。一个软件项目的构建通常包含以下几部分:
- 生成源代码(如果项目使用了自动生成部分源代码)
- 从源代码生成文档(如javadoc)
- 编译源代码
- 将编译好的代码打包到ZIP包或JAR包中
- 把打包好的文件部署到服务器或存储库
某些软件项目可能还包含其他特殊构建任务,这些任务都可以添加到maven的构建过程中自动化执行。
构建过程自动化的好处是,避免出错,效率更高,人工执行构建过程比较慢且容易出错。
3.工作原理
3.2 下载依赖jar包到本地库(Repository)
pom.
3.3 执行构建过程/阶段/目标
项目的构建通常包含数个相互独立的任务,可以独立执行,如生成文档,构建jar包等。单个任务的执行过程被称为一个构建生命周期,构建生命周期由一系列的构建阶段组成,每个阶段包含一系列的构建目标。
3.4 执行插件
插件是构建目标的集合,也称为MOJO (Maven Old Java Object)。
3.5 构建profile
可以构建项目的不同版本。
4.POM
4.1 概念
POM( Project Object Model,项目对象模型 ) 是 Maven 工程的基本工作单元,是一个
执行任务或目标时,Maven 会在当前目录中查找 POM。它读取 POM,获取所需的配置信息,然后执行目标。
POM 中可以指定以下配置:
- 项目依赖
- 插件
- 执行目标
- 项目构建 profile
- 项目版本
- 项目开发者列表
- 相关邮件列表信息
4.2 标签
节点 | 描述 |
---|---|
project | 工程的根标签 |
modelVersion | 指定模型版本,应为4.0 |
groupld | 这是工程组的标识。它在一个组织或者项目中通常是唯一的。 |
artifactld | 这是工程的标识。它通常是工程的名称。 |
version | 这是工程的版本号。 |
4.3 pom继承
父(Super)POM是 Maven 默认的 POM。所有的 POM 都继承自一个父 POM(无论是否显式定义了这个父 POM)。父 POM 包含了一些可以被继承的默认设置。
<parent> <groupId></groupId> <artifactId></artifactId> <version></version> <relativePath></relativePath> </parent>
可用上述结构显式地继承另一个POM文件。
5.存储库
Maven Repository/存储库,顾名思义是一个存储JAR文件的仓库,Maven根据项目中pom.
Maven Repository有3种类型:
- Local Repository – 本地库
- Central Repository – 中央库
- Remote Repository – 远程库
Maven搜索依赖项时,会按照:本地库、中央库和远程库的顺序进行。
本地库可以通过修改settings.
<settings
localRepository 后方是我们想要修改地本地库存储的位置。
6.项目结构
|--name |--pom.
原文转载:http://www.shaoqun.com/a/578586.html
点通:https://www.ikjzd.com/w/1913
c88:https://www.ikjzd.com/w/1017.html
本篇知识来源于大佬博客以及菜鸟教程。1.简介Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的项目管理工具软件。(它是一个强大的Java项目构建工具,基于POM(项目对象模型)文件,可用于项目构建、依赖模块管理和Javadoc生成等。)2.构建工具构建工具是软件构建过程自动化的一种工具。一个软件项目的构建通常包含以下几部分:生成源代码(如果项目使用了自动生成部分
kili:https://www.ikjzd.com/w/238
easybuy:https://www.ikjzd.com/w/2162
unsplash:https://www.ikjzd.com/w/756.html
那么多个KOL,哪一个才是最带货的?!:https://www.ikjzd.com/home/97418
外贸高手有绝活!如何抢身位为客户做事?:https://www.ikjzd.com/home/138111
利好!全球最大航运公司预计,明年集装箱吞吐量将恢复到疫情前水平:https://www.ikjzd.com/home/128491
没有评论:
发表评论