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. モジュールの作成

親プロジェクトを選択し、右クリックして [新規モジュール] を選択し、作成するプロジェクト タイプを選択して、
ここに画像の説明を挿入します
サブプロジェクト名 (親プロジェクトから継承) を入力します。
ここに画像の説明を挿入します
モジュールの pom は親プロジェクトの pom を継承します
ここに画像の説明を挿入します
。 pom は現在の親プロジェクトの子を宣言します。モジュールは
ここに画像の説明を挿入します
通常、pojo、dao、およびその他の再利用可能なクラスを共通に保存し、他のモジュールでそれらを呼び出します。

4. 2 つの SpringBoot サブモジュールを作成します

ここに画像の説明を挿入します

5. 親プロジェクトの pom ファイルを変更して spring-boot-starter-parent を継承し、サブモジュールを宣言し、両方のプロジェクトで使用する必要がある依存関係を追加します。

ここに画像の説明を挿入します

<?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. 2 つの子モジュールで親プロジェクトを継承し、親プロジェクトで宣言された依存関係を削除します。

ここに画像の説明を挿入します

共通モジュールをサブプロジェクトに導入すると、共通のクラスを呼び出すことができます。これを行う前に、共通モジュールをコンパイルしてパッケージ化し、親プロジェクトの依存関係管理 (dependencyManagement) に依存関係を追加する必要があります
ここに画像の説明を挿入します
ここに画像の説明を挿入します
。サブプロジェクト内のこの依存関係のデフォルト バージョン。

おすすめ

転載: blog.csdn.net/qq_42042158/article/details/121656785