一、project
1.project(项目)
<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.example</groupId> <artifactId>myapp</artifactId> <version>1.0-SNAPSHOT</version> <packaging>jar</packaging> </project>
groupId
: 项目的组标识,通常使用组织或公司域名的反向形式。artifactId
: 项目的唯一标识符。version
: 项目的当前版本。packaging
: 项目的打包类型(如 jar、war)。name
: 项目的名称。
二、properties
2.
properties
(属性)<properties> <java.version>17</java.version> <spring.version>2.5.6</spring.version> </properties>
作用:定义项目中的自定义属性以及指定某些插件或依赖的版本号。这使得在多个地方引用相同版本号时,只需在一个地方更新即可,实现解耦,避免了冗余代码。
三、dependencyManagement
3.
dependencyManagement
(依赖管理)<dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-dependencies</artifactId> <version>2.5.6</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement>
作用:集中管理项目中的依赖项版本。在这个部分定义的依赖不会被自动引入到项目中,而是可以在
dependencies
中引用
四、dependencies
4.
dependencies
(依赖)<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> </dependencies>
作用:将依赖项添加到此部分时,它们会被自动下载并包含在项目的类路径中。每个依赖项都需要指定其
groupId
、artifactId
和version
(version如果在父类进行版本控制则不用添加。检测是否成功导入依赖,Alt+鼠标左击artifactId。可以跳转,那么导入成功)
五、parent
5.parent
<!-- 指定父 POM --> <parent> <groupId>com.example</groupId> <artifactId>my-parent-project</artifactId> <version>1.0-SNAPSHOT</version> </parent>
作用:可以在子项目的pom中直接引入父级项目所定义的依赖、插件、属性等配置,不用在每个子项目中重复声明
总结
project
: 定义项目的基本信息。properties
: 用于声明项目中的自定义属性和版本号,方便管理。dependencyManagement
: 集中管理依赖项的版本,以确保一致性。dependencies
: 实际添加到项目中的依赖项,用于我们编写代码等功能。- parent:常用于springcloud中(多模块),便于维护管理依赖,避免重复配置。