4.1. プロジェクト構造および依存関係
4.1. プロジェクト構造
4.1.1. Spring Boot バージョン
- 必須: Spring Boot 3.x(最新パッチバージョンを使用)
- Spring Boot 3.x は Java 17 以上を要求し、本規格では Java 21 を標準とします。
4.1.2. プロファイル戦略
アプリケーション設定はプロファイルごとに分離します。
| プロファイル | 用途 | 有効化方法 |
|---|---|---|
local | ローカル開発 | IDE 実行時のデフォルト |
dev | 開発サーバー | CircleCI デプロイ時に指定 |
staging | ステージングサーバー | CircleCI デプロイ時に指定 |
prod | プロダクションサーバー | CircleCI デプロイ時に指定 |
4.2. 依存関係管理
4.2.1. Spring Boot BOM
spring-boot-starter-parent を parent として使用し、依存関係のバージョンを一括管理します。
xml
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>3.4.3</version>
<relativePath/>
</parent>4.2.2. 依存関係の原則
- Spring Boot BOM で管理される依存関係は バージョンを明示しません。
- 外部ライブラリは
<properties>にバージョンを定義し、該当プロパティを参照します。 - SNAPSHOT 依存関係はプロダクションビルドでは使用しません。