Maven POM介绍
【摘要】 POM( Project Object Model,项目对象模型 ) 是 Maven 工程的基本工作单元,是一个XML文件,包含了项目的基本信息,用于描述项目如何构建,声明项目依赖等等。
执行任务或目标时,Maven 会在当前目录中查找 POM。它读取 POM,获取所需的配置信息,然后执行目标。
POM 中可以指定以下配置:
项目构建 profile项目依赖插件执...
POM( Project Object Model,项目对象模型 ) 是 Maven 工程的基本工作单元,是一个XML文件,包含了项目的基本信息,用于描述项目如何构建,声明项目依赖等等。
执行任务或目标时,Maven 会在当前目录中查找 POM。它读取 POM,获取所需的配置信息,然后执行目标。
POM 中可以指定以下配置:
- 项目构建 profile
- 项目依赖
- 插件
- 执行目标
- 项目版本
- 项目开发者列表
- 相关邮件列表信息
创建POM 文件pom.xml
在项目根目录下创建pom.xml文件。
pom.xml:
<project xmlns = "http://maven.apache.org/POM/4.0.0" xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation = "http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <!-- 模型版本 --> <modelVersion>4.0.0</modelVersion> <!-- 公司或者组织的唯一标志,并且配置时生成的路径也是由此生成, 如com.companyname.project-group,maven会将该项目打成的jar包放本地路径:/com/companyname/project-group --> <groupId>com.companyname.project-group</groupId> <!-- 项目的唯一ID,一个groupId下面可能多个项目,就是靠artifactId来区分的 --> <artifactId>project-name</artifactId> <!-- 版本号 --> <version>1.0</version>
</project>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
所有 POM 文件都需要 project 元素和三个必需字段:groupId,artifactId,version。
- project 是工程的根标签
- modelVersion要设置为4.0.0
- groupId是工程组的标识
- artifactId是工程的标识,通常是工程的名称。groupId和artifactId一起定义了artifact在仓库中的位置
- version是工程的版本号,在 artifact 的仓库中,它用来区分不同的版本,如:com.companyname.project-group:project-name:1.0
父(Super)POM
父(Super)POM是 Maven 默认的 POM。所有的 POM 都会继承自一个父 POM(无论是否显式定义了这个父 POM)。父 POM 包含了一些可以被继承的默认设置。因此,当 Maven 发现需要下载 POM 中的依赖时,它会到 Super POM 中配置的默认仓库去下载。
Maven 使用 effective pom来执行相关的目标,它帮助开发者在 pom.xml 中做尽可能少的配置(Super pom 加上工程自己的配置),当然这些配置可以被重写。
使用以下命令来查看 Super POM 默认配置:
mvn help:effective-pom
- 1
POM 标签可参考《POM 标签大全》
文章来源: blog.csdn.net,作者:WongKyunban,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/weixin_40763897/article/details/105000022
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)