Cree un proyecto de agregación de Maven para realizar la reutilización de componentes

Un proyecto de agregación de Maven le permite crear múltiples componentes (proyectos) en un proyecto principal de Maven. Estos múltiples componentes pueden depender entre sí para lograr la reutilización de componentes.

1. Crea un proyecto Maven normal.

Insertar descripción de la imagen aquí
Creación completada
Insertar descripción de la imagen aquí

2. Modifique el pom.xm del proyecto principal y establezca el método de empaquetado en 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>

Insertar descripción de la imagen aquí
El proyecto principal se utiliza para administrar subproyectos y no implementa negocios, por lo que el directorio src se puede eliminar selectivamente.

3. Crear módulo

Seleccione el proyecto principal, haga clic derecho en Nuevo módulo, luego seleccione el tipo de proyecto que desea crear
Insertar descripción de la imagen aquí
e ingrese el nombre del subproyecto (heredado del proyecto principal).
Insertar descripción de la imagen aquí
El pom del módulo heredará el pom
Insertar descripción de la imagen aquí
del proyecto principal. pom declarará al hijo del proyecto principal actual. Los módulos
Insertar descripción de la imagen aquí
generalmente solo almacenan pojo, dao y otras clases reutilizables en común, y luego las llaman en otros módulos.

4. Cree dos submódulos SpringBoot

Insertar descripción de la imagen aquí

5. Modifique el archivo pom del proyecto principal para heredar spring-boot-starter-parent, declare el submódulo y agregue las dependencias que ambos proyectos deben usar.

Insertar descripción de la imagen aquí

<?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. Heredar el proyecto principal en los dos módulos secundarios y eliminar las dependencias declaradas en el proyecto principal.

Insertar descripción de la imagen aquí

Al introducir el módulo común en un subproyecto, puede llamar a las clases en común. Antes de hacer esto, debe compilar y empaquetar el módulo común y
Insertar descripción de la imagen aquí
Insertar descripción de la imagen aquí
agregar dependencias en la gestión de dependencias: dependencyManagement en el proyecto principal, lo que significa definir el versión predeterminada de esta dependencia en el subproyecto.

Supongo que te gusta

Origin blog.csdn.net/qq_42042158/article/details/121656785
Recomendado
Clasificación