1. Spring Initializrとは?
Spring Initializrは、Spring Bootアプリケーションのプロジェクトを簡単に作成できるツールです。必要な依存関係を選択し、プロジェクトの設定を指定することで、すぐに開発を開始できます。
Spring Initializrは以下の方法で利用できます。
- Web UI: https://start.spring.io/ から設定を入力し、プロジェクトをダウンロード
- CLI:
curl
コマンドを使ってプロジェクトを作成 - IDE連携: IntelliJ IDEAやEclipseのプラグインを利用
2. GradleとMavenの違い
Spring Initializrでは、プロジェクトのビルドツールとして Gradle または Maven を選択できます。
Maven
- XMLベースの設定 (
pom.xml
) - 依存関係管理が容易
- 予測可能なプロジェクト構造
- プラグインが豊富で安定している
Gradle
- DSL(Groovy/Kotlin)を使用し、記述がシンプル
- ビルドが高速(インクリメンタルビルド、並列実行)
- 柔軟なカスタマイズが可能
どちらを選ぶかはプロジェクトのニーズ次第ですが、最近はGradleの人気が高まっています。
3. JarファイルとWarファイルの違い
Spring Bootのアプリケーションは Jarファイル または Warファイル の形式でパッケージ化できます。
Jar(Java ARchive)
- Spring Bootのデフォルトの形式
- 組み込みのTomcatを含み、単独で実行可能
java -jar app.jar
で簡単に実行できる
War(Web Application Archive)
- 既存のアプリケーションサーバー(Tomcat、JBossなど)にデプロイ可能
pom.xml
またはbuild.gradle
でwar
パッケージを指定- 企業システムでよく使用される
一般的なSpring Bootのプロジェクトでは Jar形式 を選択するのが推奨されます。
4. Spring Initializrでプロジェクトを作成
Web UIを使用する場合
- https://start.spring.io/ にアクセス
- Project:
Maven
またはGradle
- Language:
Java
- Spring Bootのバージョン を選択
- Group と Artifact を設定(例:
com.example.demo
) - Dependencies で必要な依存関係を追加(例:
Spring Web
,Spring Boot DevTools
) - 「GENERATE」ボタンをクリックし、プロジェクトをダウンロード
- IDEで解凍して開く
CLIを使用する場合
以下のコマンドでプロジェクトを作成できます。
curl https://start.spring.io/starter.zip -d type=gradle-project -d language=java -d bootVersion=3.2.3 -d groupId=com.example -d artifactId=demo -o demo.zip
5. 作成したプロジェクトのビルド・実行
プロジェクトが作成できたら、以下のコマンドで実行します。
Mavenの場合
mvn spring-boot:run
または、Jarファイルを作成して実行
mvn package
java -jar target/demo-0.0.1-SNAPSHOT.jar
Gradleの場合
./gradlew bootRun
または、Jarファイルを作成して実行
./gradlew build
java -jar build/libs/demo-0.0.1-SNAPSHOT.jar
まとめ
Spring Initializrを使えば、簡単にSpring Bootアプリケーションを作成できます。プロジェクトのビルドツールとして GradleかMaven を選択し、出力形式として JarまたはWar を決めることで、スムーズな開発が可能になります。