创建Maven聚合工程,实现组件的复用

Maven聚合工程就是可以在一个Maven父工程中创建多个组件(项目),这个多个组件之间可以相互依赖,实现组件的复用

1、创建一个普通的Maven工程

在这里插入图片描述
创建完成
在这里插入图片描述

2、修改父工程的pom.xm,设置打包方式为pom

<?xml version="1.0" encoding="UTF-8"?>
<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.study</groupId>
    <artifactId>Maven-study</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>pom</packaging>

</project>

在这里插入图片描述
父工程用于管理子工程,不进行业务实现,因此src目录可以选择性删除

3、创建Module

选择父工程-右键–New–Module,然后选择自己想要创建的项目类型
在这里插入图片描述
输入子工程名称(从父工程继承)
在这里插入图片描述
module的pom会继承父工程的pom
在这里插入图片描述
父工程的pom中会声明当前父工程的子 module
在这里插入图片描述
一般在common中只存放pojo,dao等一些可以复用的类,然后在其他模块中调用

4、创建两个SpringBoot子模块

在这里插入图片描述

5、修改父项目pom文件使其继承spring-boot-starter-parent,并且声明子module,添加两个项目都需要使用的依赖

在这里插入图片描述

<?xml version="1.0" encoding="UTF-8"?>
<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>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.6.1</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

    <groupId>com.study</groupId>
    <artifactId>Maven-study</artifactId>
    <version>1.0-SNAPSHOT</version>
    <modules>
        <module>common</module>
        <module>manager-system</module>
        <module>user-system</module>
    </modules>
    <packaging>pom</packaging>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>

        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <excludes>
                        <exclude>
                            <groupId>org.projectlombok</groupId>
                            <artifactId>lombok</artifactId>
                        </exclude>
                    </excludes>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

6、在两个子module中继承父工程,并删除父工程中已声明的依赖

在这里插入图片描述

在子项目中引入common模块就可以调用common中的类,在这之前需要将common模块编译打包
在这里插入图片描述
在这里插入图片描述
在父项目中依赖管理:dependencyManagement 中添加依赖,表示定义子工程中此依赖的默认版本

猜你喜欢

转载自blog.csdn.net/qq_42042158/article/details/121656785