前往官网下载:IDEA 创建SpringBoot 父子模块
在父级模块的pom.xml文件下
创建dependencies节点,直接添加在dependencies节点的中的依赖是每个子模块项目都直接拥有的, 简单来说 ,如果一个子模块它的父级模块为parent 在parent模块中的pom.xml文件 下中的dependencies节点下的所有依赖,子模块同样拥有,无需再引入依赖!
<properties> <!-- Java Version --> <java.version>1.8</java.version> <!-- Dependency Version --> <spring.boot.starter.version>2.3.1.RELEASE</spring.boot.starter.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <version>${spring.boot.starter.version}</version> </dependency> </dependencies>
添加依赖时不再指定版本,而是将版本在properties节点中指定版本号,做版本统一管理
图为父级模块的pom.xml ,代表着此父级模块拥有两个子模块
在modules子模块中的项目中如需要使用dependencies节点下的依赖时,子模块的pom.xml将不需要添加任何依赖
父子模块配置
在父级模块pom.xml文件,创建dependencyManagement节点,此节点中的依赖只是为了管理子模块项目使用依赖时的版本
<dependencyManagement> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> <version>${lombok.version}</version> </dependency> </dependencyManagement>
如上所示,如果子模块也需要此依赖,只需要将此依赖配置在子模块的pom.xml文件下的dependencies节点下,且无需再配置version节点,这样此依赖使用的版本号同为父级模块配置的
子模块的依赖配如下:
<dependencies> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency> </dependencies>
总结:如果大量模块需要用同一个依赖,可将此依赖放在父级模块pom.xml文件下的dependencies节点下,反之如果只是其中某一个子模块需要用,那么将此依赖放在dependencyManagement节点下,此节点下的子模块别忘了依赖仍然需要引入,只是不需要再配置版本号