Spring BootとVS Codeで開発を始めよう!拡張機能・launch.json・ホットリロードを丁寧に解説
生徒
「Spring Bootの開発って、Visual Studio Codeでもできるんですか?」
先生
「はい、できますよ。VS Codeは軽量で使いやすく、Spring Bootの開発にも十分対応しています。」
生徒
「じゃあ、始めるには何を準備すればいいですか?拡張機能とか設定とか…?」
先生
「いい質問ですね。今回は、VS CodeでSpring Bootを快適に使うために必要な拡張機能、launch.jsonの設定、ホットリロードの有効化について、順を追って丁寧に説明していきましょう。」
1. VS CodeでSpring Bootを使うための基本環境
Spring Bootの開発をVisual Studio Codeで行うには、まず「Javaで動く開発環境」を整える必要があります。具体的には、Javaの開発キット(JDK)、ビルドツール(MavenまたはGradle)、そしてVS Code本体の三点セットが基本です。これらがそろうと、Spring Bootプロジェクトを開いてコードを書き、ターミナルから実行するところまでスムーズに進められます。加えて、PCにインストールしたJavaが正しく認識されているかを確認しておくと、つまずきを減らせます。
- Java Development Kit(JDK)17 以上(Spring Bootでよく使われるバージョン)
- ビルドツール(GradleまたはMaven:依存関係の管理とビルドに使用)
- Visual Studio Code(軽量エディタ。Java拡張と組み合わせてIDEのように使える)
JDKは公式サイトからダウンロード可能です。インストール後は環境変数JAVA_HOMEの設定も忘れずに行いましょう。あわせて、ターミナルでjava -versionを実行し、JDKのバージョンが表示されれば準備は順調です。
いきなりSpring Bootに入る前に、Javaが動くかを簡単に確かめておくと安心です。次のプログラムは「こんにちは」と表示するだけの最小サンプルで、JDKの導入確認に使えます。
public class HelloJava {
public static void main(String[] args) {
System.out.println("こんにちは、Java");
}
}
こんにちは、Java
この表示ができれば、JDKとターミナルの基本準備はできています。VS Codeでファイルを作成し、保存してからターミナルで実行する流れに慣れておくと、Spring Bootのプロジェクト作業にも入りやすくなります。
2. Spring Bootに必要なVS Codeの拡張機能
次に、Spring Boot開発に役立つVisual Studio Codeの拡張機能を紹介します。VS Codeはそのままでも使えますが、拡張機能を入れることで「入力補完」「エラー表示」「プロジェクトの読み込み」「デバッグ実行」などが一気に扱いやすくなり、初心者でも迷いにくい環境になります。特にJavaとSpring Bootはファイル数が増えやすいので、必要な機能をまとめて導入しておくと、作業の流れが途切れにくくなります。
- Extension Pack for Java:Javaの補完、コード整理、参照ジャンプなど基本機能をまとめて追加
- Spring Boot Extension Pack:Spring Boot向けの支援機能(実行・補完・情報表示など)をまとめて追加
- Debugger for Java:ブレークポイントやステップ実行など、デバッグに必要な機能を追加
これらは、VS Codeの拡張機能タブから名前で検索してインストールできます。インストール後はVS Codeを再読み込みすると反映されやすく、Javaファイルを開いたときに補完候補が出るようになれば準備は順調です。もし警告が出る場合は、JDKが認識できていないこともあるので、まずは「Javaが動く状態」になっているかを確認しましょう。
拡張機能が入ると、入力中に候補が出たり、間違いがその場で指摘されたりします。例えば次のコードで、System.out.printlnの途中入力でも補完が出れば、Java拡張がうまく動いています。わざとスペルを崩すと波線が表示されるため、エラー検知も確認できます。
public class ExtensionCheck {
public static void main(String[] args) {
System.out.println("VS CodeでJavaが書けました");
}
}
目に見えて便利になるポイントは、補完による入力ミスの減少と、エラーの早期発見です。プログラミング未経験の方ほど「何が正しい形なのか」を手がかりにしやすくなるので、まずは拡張機能を入れて、VS CodeをJava開発向けに整えるところから始めるのがおすすめです。
3. launch.jsonでSpring Bootの起動設定を作成
Spring BootアプリケーションをVisual Studio Code上で「実行」や「デバッグ」するためには、launch.jsonという起動設定ファイルを用意します。これは、どのクラスを起点にアプリケーションを起動するのか、どのプロジェクトを対象にするのかをVS Codeに教えるための設定です。IDEに慣れていない初心者の方でも、このファイルを一度作っておけば、ボタン一つで起動できるようになります。
launch.jsonは、プロジェクト直下にある.vscodeフォルダの中に配置します。まだフォルダがない場合は、VS Codeが自動で作成してくれるので心配はいりません。
以下は、GradleでビルドしたSpring Bootアプリケーションを起動するためのlaunch.jsonの基本例です。
{
"version": "0.2.0",
"configurations": [
{
"type": "java",
"name": "Spring Boot 起動",
"request": "launch",
"mainClass": "com.example.demo.DemoApplication",
"projectName": "demo"
}
]
}
mainClassには、@SpringBootApplicationが付いたクラスの完全修飾名を指定します。通常はプロジェクト作成時に自動生成されるクラスです。projectNameは、VS Code上で認識されているプロジェクト名に合わせて設定します。
この設定を行うことで、ターミナルでコマンドを入力しなくても、VS Codeの「実行とデバッグ」画面からSpring Bootを起動できるようになります。ブレークポイントもすぐに使えるため、画面の動きや処理の流れを確認しながら学習を進めたい方には特に便利な設定です。
4. Spring Bootでホットリロードを使うには
ホットリロード(Hot Reload)とは、ソースコードを変更したときにアプリケーションを手動で停止・再起動しなくても、変更内容が反映されやすくなる仕組みです。開発中は少し直して確認する作業を何度も繰り返すため、ホットリロードが使えるだけで待ち時間が減り、作業がかなり楽になります。特にSpring BootのWebアプリ開発では、画面表示やAPIの動作確認をテンポよく進めたい場面が多いので、最初に設定しておく価値があります。
Spring Bootでホットリロードを有効にする代表的な方法が、Spring DevToolsという依存関係を追加することです。DevToolsは開発用の便利機能をまとめたもので、クラスパス上の変更を検知して自動的に再起動を促す役割を持ちます。Gradleの場合は、build.gradleに次のように追加します。
dependencies {
developmentOnly 'org.springframework.boot:spring-boot-devtools'
}
例えば、Spring Bootで「文字を返すだけ」の簡単な処理を作っておくと、ホットリロードの効果を体感しやすいです。下の例では、表示する文字を変えて保存し、再度アクセスしたときに内容が切り替われば、変更検知がうまく働いていると判断できます。
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class HelloController {
@GetMapping("/hello")
public String hello() {
return "こんにちは、Spring Boot";
}
}
ここでreturnの文字を「こんばんは、Spring Boot」などに変えて保存し、ブラウザで再読み込みしたときに表示が変わるかを確認します。もし変化がない場合でも、DevToolsを入れておくことで原因の切り分けがしやすくなります。
なお、IntelliJなどのIDEとは異なり、VS Codeでホットリロードをしっかり機能させるには、「ファイル保存時に自動ビルドが走るようにする」設定も必要になります。まずはDevToolsを入れて土台を作り、開発用の動きに慣れていきましょう。
5. VS Codeでホットリロードを活かすには
次に、VS Code側の設定です。以下の手順で、保存時に自動的にコンパイル・再起動がかかるように設定します。
Ctrl + Shift + Pでコマンドパレットを開き、「設定(Preferences: Open Settings)」を選択- 「Java › Compile On Save」 を「true」に設定
- Gradle使用時は、「Java: Autodetect Gradle」 を有効に
これでソースコードを保存するたびに、自動的に再ビルドがかかり、Spring DevToolsがそれを検知してアプリケーションを自動で再起動してくれます。
6. Spring Bootプロジェクトの作成と起動の流れ
ここまでで環境が整ったので、実際にSpring Bootプロジェクトを作成してみましょう。
- Spring Initializrでプロジェクトを作成
- 依存関係に「Spring Web」「DevTools」などを選択
- ダウンロードしたZIPを解凍し、VS Codeで開く
- ターミナルで
./gradlew bootRunを実行
また、launch.jsonを設定していれば、VS Codeの「実行とデバッグ」タブから起動することも可能です。
7. デバッグの使い方とブレークポイント設定
デバッグを行うには、VS Codeの左側の虫アイコン「実行とデバッグ」をクリックし、ブレークポイントを設定したい行をクリックします。
その後、「Spring Boot 起動」など自分で作成した構成を選んで実行すれば、止めたい行でアプリケーションが停止します。
変数の中身を確認したり、ステップ実行をしたりできるため、デバッグ作業が非常に楽になります。
8. 開発効率を上げる便利なTips
Spring Boot × VS Code の組み合わせで開発効率を高めるには、以下のような工夫も有効です。
- Live Server拡張機能でフロント側の即時プレビュー
- .envファイルを使った環境変数管理
- マルチモジュールプロジェクトは、
settings.gradleで正しく定義
特にチーム開発の場合は、VS Codeのsettings.jsonを共有して、設定を統一するのもおすすめです。
まとめ
Spring BootとVisual Studio Codeの組み合わせは、初心者にとっても非常に扱いやすく、Java開発を始めるうえでの強力なスタート地点になります。本記事では、Java開発環境として必要なJDKやビルドツールの準備から、Spring Bootに必要な拡張機能の導入方法、launch.jsonファイルを使った起動設定、そして開発効率を大きく向上させるホットリロード(Spring DevTools)の活用方法までを丁寧に解説しました。
特にホットリロードの設定は、リアルタイムでの変更反映ができるようになり、プログラムを何度も再起動する手間が省けるので、開発スピードと集中力の向上に直結します。また、launch.jsonによってデバッグが簡単に実現できるのもVS Codeならではの魅力です。
拡張機能「Spring Boot Extension Pack」や「Debugger for Java」などは、コード補完やアノテーションの理解を深める助けにもなり、Spring Bootの学習そのものが効率的になります。これらを正しく導入することで、Javaのアプリケーション開発に対する不安を一気に減らせるでしょう。
さらに、Spring Initializrを活用することで、Spring Bootプロジェクトの初期構成を短時間で作成でき、すぐに実践的なアプリケーションの構築へ移行できます。GradleやMavenなどのビルドツールとも自然に馴染む設計になっており、Javaのフレームワークの中でも特に使いやすいと感じる方が多いのも納得です。
最後に、開発効率を上げるためのTipsとして、Live Serverの活用や.envファイルによる環境変数の管理、複数モジュール構成への対応など、現場でも役立つ工夫も紹介しました。Spring BootとVS Codeの組み合わせを習得すれば、Webアプリケーションの開発において確実に力を発揮できるようになります。
これからSpring BootでJavaのWeb開発を始めたいと考えている方、またはより軽量なエディタで学び直したい方にとって、今回の記事が役立つ第一歩になることを願っています。
Spring Bootの起動クラス例
最後に、Spring Bootの起動クラス(エントリポイント)の基本形を再確認しておきましょう。
package com.example.demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
生徒
「VS CodeでもSpring Bootを快適に開発できるって、今回の記事でよく分かりました!」
先生
「良かったです。軽量で使いやすく、しかも拡張機能やホットリロードを活用すれば、かなり実践的な開発ができますよ。」
生徒
「launch.jsonの使い方とか、Spring DevToolsのホットリロードは知らなかったので勉強になりました。」
先生
「実際の現場でも使われている技術なので、今のうちに慣れておくと将来とても役に立ちますよ。」
生徒
「じゃあ、次はコントローラーの作り方とか、データベース接続にもチャレンジしてみたいです!」
先生
「その意気です。Spring Bootの基礎が身についたら、次はMVCやREST APIの構築に進みましょう。」