Spring Boot開発者必見!Mavenからビルド情報を簡単に取得する方法


Spring Boot を使って開発していると、アプリケーションのバージョン番号やビルドタイムスタンプなどのビルド情報を取得したくなることがあります。これらの情報は、特にデバッグや運用環境での管理に役立ちます。本記事では、Spring Boot アプリケーション内で Maven のバージョン番号やビルドタイムスタンプを簡単に取得する方法を紹介します。

1. なぜビルド情報が重要なのか?

アプリケーションを運用する際、以下の情報を追跡することが非常に重要です。

  • バージョン番号: アプリケーションのリリース管理に役立ちます。特定のバージョンで発生したバグをトラッキングするためには、バージョン番号を簡単に確認できることが重要です。
  • ビルドタイムスタンプ: 開発の途中でビルドを行った日時が記録されることで、問題発生時にどのビルドが問題を引き起こしているのかを追跡する手助けになります。

2. Mavenを使ってビルド情報を管理する

Maven では、ビルド時にプロジェクトのバージョン番号やビルドタイムスタンプを自動的に取得することができます。これらの情報は pom.xml ファイルを介して管理され、Spring Boot アプリケーションで簡単に参照することができます。

2.1 pom.xml の設定

まず、Maven のビルド情報を参照できるように pom.xml を設定します。次の設定を追加して、ビルドのタイムスタンプとバージョン番号をプロジェクトで使えるようにします。

この設定で、例えば 20250219-130529 のようなタイムスタンプが生成されます。

3. Spring Bootでビルド情報を取得する

Maven で生成したビルド情報を Spring Boot アプリケーション内で使用する方法を見ていきます。

3.1 application.properties にプロパティを追加

application.properties ファイルに、Maven プロパティを使ってアプリケーションのバージョンとビルドタイムスタンプを設定します。次のようにプロパティを設定することで、アプリケーション内でこれらの情報にアクセスできます。

3.2 GlobalControllerAdvice クラスでビルド情報を表示

次に、Spring Boot アプリケーションでビルド情報を表示するために、@ControllerAdvice を使ってアプリケーション全体で共通の処理を実装します。このクラスは、リクエストに対してバージョン番号とビルドタイムスタンプをフォーマットして、全てのコントローラーで利用できるようにします。

このクラスは、アプリケーション全体のモデルに version 属性を追加し、version にバージョン番号とタイムスタンプを結合した値を設定します。この値は、全てのビューで利用可能になります。

4. 結果の表示

@ControllerAdvice で設定したビルド情報は、アプリケーション全体で利用できます。例えば、Thymeleaf テンプレートを使って、次のように簡単に表示することができます。

このように、全てのリクエストに対して version の値が自動的に埋め込まれ、バージョン番号とビルドタイムスタンプが簡単に確認できるようになります。たとえば、表示される内容はこんな感じです:

これで、アプリケーションのビルド情報を簡単に確認でき、バージョン管理やデバッグ作業がよりスムーズになります。

5. まとめ

この記事では、Spring Boot アプリケーションで Maven のバージョン番号とビルドタイムスタンプを取得し、アプリケーション内で活用する方法を紹介しました。これにより、ビルド情報を効果的に管理し、運用やデバッグの際に役立てることができます。ぜひ、今回の方法を実践して、開発や運用の効率化を実現してください。

 

エコモットでは、Spring Bootをはじめとする最新技術を駆使して、

IoTに関連する多彩なプロジェクトに取り組んでいます。

私たちと一緒に、革新的なモノづくりに挑戦し、未来を創る仲間を募集しています。