SpringBootスターターの親

1.はじめに

このチュートリアルでは、spring-boot-starter-parentについて学び、依存関係の管理、プラグインのデフォルト構成を改善し、SpringBootアプリケーションをすばやく構築するためにそれを活用する方法を学びます。

また、starter-parentによって提供される既存の依存関係とプロパティのバージョンをオーバーライドする方法についても説明します

2. SpringBootスターターの親

春・ブート・スターター・親たちのアプリケーションとすぐに私たちの構築するための完全な依存性ツリーのデフォルト設定を提供-プロジェクトは、特別なスタータープロジェクトです春ブートプロジェクトを。

また、Mavenのは、プラグインのデフォルト設定を提供などのmaven-フェイルセーフ・プラグインはMavenのジャー・プラグインはMavenの-確実な-プラグインMavenの戦争-プラグイン

それを超えて、それはまた、s pring-boot-starter-parentの親であるspring-boot-dependenciesから依存関係管理を継承します

これをプロジェクトのpom.xmlに親として追加することで、プロジェクトでの使用を開始できます。

 org.springframework.boot spring-boot-starter-parent 2.2.6.RELEASE 

Spring -boot-starter-parentの最新バージョンはMavenCentralからいつでも入手できます

3.依存関係の管理

プロジェクトでスターターの親を宣言したら、依存関係タグで宣言するだけで、親から依存関係を引き出すことができます。

また、依存関係のバージョンを定義する必要はありません。Mavenは、親タグでスターター親に定義されたバージョンに基づいてjarファイルをダウンロードします。

たとえば、Webプロジェクトを構築している場合、spring-boot-starter-webを直接追加でき、バージョンを指定する必要はありません。

  org.springframework.boot spring-boot-starter-web  

4.依存関係管理タグ

スターターの親によって提供される依存関係の異なるバージョンを管理するために、dependencyManagementセクションで依存関係とそのバージョンを明示的に宣言できます。

   org.springframework.boot spring-boot-starter-data-jpa 2.2.5.RELEASE   

5.プロパティ

スターターの親で定義されているプロパティの値を変更するには、プロパティセクションでその値を再宣言します。

春・ブート・スターター・親の親を介した春ブート依存関係の用途のプロパティすべての依存関係のバージョン、Javaのバージョン、およびMavenプラグインのバージョンを設定します。

したがって、対応するプロパティを変更するだけで、これらの構成を簡単に制御できます。

スターターの親から取得する依存関係のバージョンを変更する場合は、依存関係タグに依存関係を追加して、そのプロパティを直接構成できます。

 4.11 

6.その他のプロパティの上書き

プラグインバージョンの管理などの他の構成や、Javaバージョン、ソースエンコーディングの管理などの基本構成にもプロパティを使用できます。

新しい値でプロパティを再宣言する必要があります。

たとえば、Javaバージョンを変更するには、java.versionプロパティで指定できます。

 1.8 

7.スターター親のないSpringBootプロジェクト

カスタムのMaven親が存在する場合があります。または、すべてのMaven構成を手動で宣言することをお勧めします。

その場合、spring-boot-starter-parentプロジェクトを使用しないことを選択できます。ただし、インポートスコープのプロジェクトに依存関係spring-boot-dependenciesを追加することで、依存関係ツリーの恩恵を受けることができます。

スターター親以外の別の親を使用する簡単な例でこれを説明しましょう。

 com.baeldung spring-boot-parent 1.0.0-SNAPSHOT 

ここでは、親の依存関係として別のプロジェクトの親モジュールを使用しました。

さて、この場合でも、インポートスコープとpomタイプに依存関係管理を追加することで、依存関係管理と同じ利点を得ることができます。

   org.springframework.boot spring-boot-dependencies 2.2.6.RELEASE pom import   

さらに、前の例で行ったように、依存関係で宣言するだけで、任意の依存関係を取り込むことができます。これらの依存関係にバージョン番号は必要ありません。

8.まとめ

このチュートリアルでは、spring-boot-starter-parentの概要と、それを子プロジェクトの親として追加する利点について説明しました。

次に、依存関係を管理する方法を学びました。依存関係は、dependencyManagementまたはプロパティを介してオーバーライドできます。

このチュートリアルで使用されるスニペットのソースコードはGithubで入手でき、1つはスターター親を使用し、もう1つはカスタム親を使用します。