Maven POM学习笔记
简介
Maven是一款流行的构建工具,Maven项目使用pom.xml文件来定义项目和构建过程中需要的依赖项等元数据。POM(Project Object Model)是Maven的核心组件之一,它定义了项目的基本信息、依赖关系以及如何构建这个项目。
POM的结构
POM是一个XML文件,其结构如下:
xmlCopy Code<project>
<modelVersion>4.0.0</modelVersion>
<groupId>com.example</groupId>
<artifactId>my-project</artifactId>
<version>1.0.0</version>
<dependencies>
<!-- 项目依赖 -->
</dependencies>
<build>
<!-- 项目构建配置 -->
</build>
</project>
其中各个元素具体含义如下:
modelVersion
:POM模型版本,在大多数情况下为4.0.0(当前最新版本)。groupId
:项目所属的组织或机构的唯一标识符。artifactId
:项目的唯一标识符。version
:项目的版本号。dependencies
:指定项目的依赖项。每个依赖项都由groupId、artifactId和version三个元素组成。build
:定义项目的构建过程。该元素包含了一系列子元素,如plugins(插件)、resources(资源)、testResources(测试资源)等。
POM的实例
以下是一个简单的POM实例:
xmlCopy Code<project>
<modelVersion>4.0.0</modelVersion>
<groupId>com.example</groupId>
<artifactId>my-project</artifactId>
<version>1.0.0</version>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
</project>
该POM定义了一个名为my-project的项目,其配置包含了一个依赖项和一个构建插件。
在dependencies元素中,定义了一个依赖项,它指定了项目所需的junit库,并将其作为test依赖项引入。这意味着该依赖项仅在项目进行测试时才会被加载。
在build元素中,定义了一个插件maven-compiler-plugin,它指定了源代码和目标字节码的版本为1.8。该插件还可以配置其他属性,如输出目录、编译器插件等。