在Maven中,继承指Maven项目之间配置信息的继承,其中一个项目从另一个项目继承配置信息,这样多个项目可以统一配置信息,简化对项目配置的管理和维护。
<groupId>com.giser</groupId>
<artifactId>giser-java</artifactId>
<version>1.0-SNAPSHOT</version>
<!-- 父工程打包方式为pom,用于管理子工程 -->
<packaging>pom</packaging>
<!-- 使用parent标签指定当前工程的父工程坐标信息 -->
<parent>
<artifactId>giser-java</artifactId>
<groupId>com.giser</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<!--
子工程坐标:
由于子工程和父工程的groupId和artifactId一致,则可以省略不写
-->
<artifactId>giser-java-common</artifactId>
<packaging>jar</packaging>
使用父工程统一管理依赖信息。
<properties>
<spring.version>6.1.2</spring.version>
</properties>
<!-- 被管理的依赖并没有真正被引入到工程 -->
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.version}</version>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
</dependency>
</dependencies>
Maven聚合是指将多个项目组织到一个父级项目中,以便一起构建和管理的机制。聚合可以帮助我们更好地管理一组相关的子项目,同时简化它们的构建和部署过程。
在父工程中,通过modules标签标识聚合项目。
<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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.giser</groupId>
<artifactId>giser-java</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>pom</packaging>
<modules>
<module>giser-java-common</module>
</modules>
</project>
可以通过构建父工程,来统一构建其聚合的所有子模块。