【单体应用 - 使用 Maven 构建应用】06 Maven POM
程序员文章站
2022-04-26 15:57:28
...
POM 代表项目对象模型。它是 Maven 中的基本单位,这是一个 XML 文件。它始终保存在该项目基本目录中的 pom.xml
文件。
POM 包含的项目是使用 Maven 来构建的,它用来包含各种配置信息。
POM 也包含了目标和插件。在执行任务或目标时,Maven 会使用当前目录中的 POM。它读取 POM 得到所需要的配置信息,然后执行目标。部分的配置可以在 POM 使用如下:
- project dependencies (项目依赖)
- plugins (插件)
- goals (目标)
- build profiles (生成配置文件)
- project version (项目版本)
- developers (开发人员)
- malling list (邮件列表)
创建一个 POM 之前,应该要先解决项目组(groupId),项目名称(artifactId) 和版本,因为这些属性在项目仓库是唯一标识的。
POM 的例子
<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>
<groupId>com.yuu</groupId>
<artifactId>project</artifactId>
<version>1.0</version>
</project>
要注意的是,每个项目只有一个 POM 文件
- 所有的 POM 文件必须有三个必填字段:groupId,atrifactId,version
- 在库中的项目符号是:
groupId:atrifactId:version
-
pom.xml
的根元素是 project,它有三个主要的节点。
节点 | 描述 |
---|---|
groupId | 这个是项目组的编号,这在组织或项目中通常是独一无二的。例如,一家银行集团 com.company.bank 拥有所有银行相关项目。 |
artifacteId | 这是项目的 ID。这通常是项目的名称。例如,consumer-banking 。除了 groupId 之外,artifactId 还定义了 artifact 在存储库中的位置。 |
version | 这是项目的版本。与 groupId 一起使用,artifact 在存储库中用于将版本彼此分离。例如:com.company.bank:consumer-banking:1.0 ,com.company.bank:consumer-banking:1.1
|