LoginSignup
1
3

More than 5 years have passed since last update.

Spring Boot + MavenでSpringのバージョンを個別に設定する方法

Last updated at Posted at 2018-12-30

はじめに

Spring Bootは各種モジュールの依存関係やコンフィグレーションを設定した状態で配布されており、利用者はすぐに利用可能となる。
とはいえ、パッチ適用等個別にモジュールのバージョンを上げたいケースもある。
ここでは、Springをバージョンアップを例にとり、個別にモジュールのバージョンを上げることを記述する。

設定方法

具体的な設定方法を確認した後、設定値をどのように確認するのかを記述する。

設定方法

プロジェクトのpom.xmlのpropertiesでバージョンを指定する。
下記の例では5.1.2.RELEASEに指定したい場合

<properties>
    <spring.version>5.1.2.RELEASE</spring.version>
</properties>

spring.versionの確認方法

Springのバージョンを指定する値がspring.versionであることを確認するためには、Spring Bootの依存関係ファイルを確認すればよい。
確認するためにはMavenのリポジトリの次のパスに依存関係が書かれたファイルがある。中身を見るとspring.versionを指定すると、spring-framework.versionの指定が同時に行われ、spring-framework.versionはspring-coreとspring-framework-bomの設定をしていることがわかる。
さらにspring-framework-bomは各種Spring関連モジュールの設定をしていることがわかる。

.m2\repository\org\springframework\boot\spring-boot-dependencies\{Spring Bootのバージョン}\spring-boot-dependencies-{Spring Bootのバージョン}.pom

上記ファイルの抜粋

        <spring.version>5.1.2.RELEASE</spring.version>
        <spring-framework.version>${spring.version}</spring-framework.version>
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-core</artifactId>
                <version>${spring-framework.version}</version>
            </dependency>
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-framework-bom</artifactId>
                <version>${spring-framework.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

5.1.2.RELEASEの確認方法

spring.versionにどの値が入るのかについてはMavenRepositoryを確認すればよい。先ほどspring.versionとspring-coreは同じバージョンが入ることが確認できたので、次のサイトからバージョンを確認する。

終わりに

Springバージョンのバージョン指定を例にとったが、同様の方法で個別のモジュールを設定することが可能である。
ただし、利用者が勝手にバージョンを変更しているのでモジュールの参照が多い場合、他モジュールで参照しているものとバージョン整合が取れなくなる可能性があったり動作確認は必要となるので、注意が必要である。

1
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
3