Visual Studio Code での Java
Visual Studio Code での Java のサポートは、幅広い拡張機能を通じて提供されます。VS Code 本体の強力な機能と組み合わせることで、これらの拡張機能は、最も一般的な Java 開発手法の多くをサポートする、軽量でパフォーマンスの高いコード エディターを提供します。
この記事では、Java 開発者向けに Visual Studio Code のさまざまな機能の概要を説明します。Visual Studio Code を使用した Java プログラムの編集、実行、およびデバッグの簡単なチュートリアルについては、以下の Java 開発開始チュートリアル ボタンを使用してください。
概要
VS Code は、コード補完、リファクタリング、リンティング、整形、コード スニペットなどの必須の言語機能に加えて、便利なデバッグや単体テストのサポートを提供します。また、VS Code は Maven、Tomcat、Jetty、Spring Boot などのツールやフレームワークとも統合されています。Visual Studio Code のパワーを活用することで、Java 開発者は、迅速なコード編集と、デバッグおよびテストのフル サイクルの両方に優れたツールを得ることができます。以下のようなツールをお探しの場合は、Java の作業に最適な選択肢です。
- 高速、軽量、無料、そしてオープンソースである。
- Java だけでなく、他の多くの言語をサポートしている。
- 複雑な IDE をインストールして学習することなく、Java の学習や開発を始めることができる。
- 人気のフレームワーク、コンテナー ツール、クラウド統合など、優れたマイクロサービス サポートを提供する。
- Visual Studio Live Share などのチームベースのコラボレーション機能を提供する。
- IntelliSense やその他のコード認識編集機能によって生産性を向上させる。
Java 用の Visual Studio Code のインストール
迅速にセットアップできるように、VS Code、Java Development Kit (JDK)、および Microsoft が推奨する拡張機能コレクションをバンドルした Coding Pack for Java の使用をお勧めします。Coding Pack は、既存の開発環境を修復するためにも使用できます。
Coding Pack for Java のインストール - Windows
Coding Pack for Java のインストール - macOS
注意: Coding Pack for Java は Windows と macOS でのみ利用可能です。その他のオペレーティング システムの場合は、JDK、VS Code、および Java 拡張機能を手動でインストールする必要があります。
すでに VS Code をインストールしており、そこに Java サポートを追加したい場合は、Microsoft が推奨する拡張機能のコレクションである Extension Pack for Java を使用することをお勧めします。
- Red Hat による Java™ 用言語サポート
- Debugger for Java
- Java 用テスト ランナー
- Java 用 Maven
- Java 用プロジェクト マネージャー
- Visual Studio IntelliCode
Extension Pack for Java のインストール
あるいは、人気のある Java 拡張機能を自分でインストールすることで、VS Code に Java 言語サポートを追加することもできます。
VS Code のダウンロード - まだ VS Code をダウンロードしていない場合は、お使いのプラットフォーム(Windows、macOS、Linux)用に素早くインストールしてください。
また、ご自身のニーズに合わせて選択できる他の人気のある Java 拡張機能には、以下のようなものがあります。
- Spring Boot Extension Pack
- Java 用 Gradle
- Community Server Connectors (Apache Felix、Karaf、Tomcat、Jetty 用など)
- Server Connector (Red Hat サーバー、たとえば Wildfly 用)
- Extension Pack for MicroProfile
- CheckStyle
- SonarLint
VS Code を取り巻く素晴らしい Java コミュニティのおかげで、リストはこれだけにとどまりません。VS Code 内でより多くの Java 拡張機能を簡単に検索できます。
- 拡張機能 ビュー(⇧⌘X (Windows、Linux では Ctrl+Shift+X))に移動します。
- 「java」と入力して拡張機能リストをフィルターします。
このドキュメントでは、これらの Java 拡張機能に含まれるいくつかの主要な機能について説明します。
注意: Java 開発をスムーズに開始できるように、Java General プロファイル テンプレートを使用して便利な拡張機能をインストールできます。プロファイルの詳細や、プロファイルを使用してさまざまなプログラミング言語やワークフローに合わせてエディターを迅速に再構成する方法については、VS Code でのプロファイルを参照してください。
はじめに
注意: Windows 上で VS Code を使用しており、Windows Subsystem for Linux を活用したい場合は、WSL での開発を参照してください。
Java Development Kit (JDK) のインストール
Java Development Kit (JDK) は、Java アプリケーションの開発に使用されるソフトウェア開発環境です。Visual Studio Code 内で Java を実行するには、JDK をインストールする必要があります。Extension Pack for Java は、Java バージョン 1.8 以上をサポートしています。
以下のいずれかのソースから JDK をインストールすることを検討することをお勧めします。
- Amazon Corretto
- Azul Zulu
- Eclipse Adoptium の Temurin
- IBM Semeru Runtimes
- Microsoft Build of OpenJDK
- Oracle Java SE
- Red Hat build of OpenJDK
- SapMachine
注意: 複数の JDK がインストールされており、プロジェクトで特定の JDK バージョンを使用する必要がある場合は、プロジェクトのランタイムの設定を参照してください。Java のプレビュー機能を有効にするには、新しい Java バージョンで VS Code を使用する方法を参照してください。
Java または VS Code を初めて使用する開発者向けに、拡張機能内でいくつかのヒントを提供しています。Extension Pack for Java をインストールすると、VS Code のコマンド パレットから Java: Tips for Beginners コマンドを使用して、ヒントを表示できます。
コマンド パレット(⇧⌘P (Windows、Linux では Ctrl+Shift+P))を開き、「java tips」と入力してコマンドを選択します。

Java ソース ファイルの操作
VS Code を使用すると、プロジェクトを作成しなくても、Java ソース ファイルの読み取り、書き込み、実行、およびデバッグを行うことができます。VS Code for Java は、ライトウェイト(軽量)モードとスタンダード(標準)モードの 2 つのモードをサポートしています。ライトウェイト モードは、ソース ファイルのみを扱うシナリオに最適です。本格的なプロジェクトを扱いたい場合は、スタンダード モードが必要になります。必要に応じて、ライトウェイト モードからスタンダード モードへ簡単に切り替えることができます。詳細については、ライトウェイト モードを参照してください。
Java プロジェクトの操作
VS Code で Java を操作するために理解しておく必要がある 3 つの事柄があります。
- VS Code はワークスペースをどのように処理しますか?
- VS Code は Java をどのように処理しますか?
- VS Code は Java を含むワークスペースをどのように処理しますか?
VS Code ワークスペース
Visual Studio Code における「ワークスペース」とは、1 つ以上のファイルシステム フォルダー(およびその子フォルダー)と、その「ワークスペース」が VS Code で開かれているときに有効になるすべての VS Code 設定のコレクションを意味します。VS Code には、「フォルダー ワークスペース」と「マルチルート ワークスペース」の 2 種類の「ワークスペース」があります。
「フォルダー ワークスペース」は、VS Code でファイルシステム フォルダー(ディレクトリ)を開いたときに表示されます。
「マルチルート ワークスペース」は、ファイルシステムの異なる場所にある複数のフォルダー(ディレクトリ)を参照でき、VS Code はそれらのワークスペースのフォルダーの内容をファイル エクスプローラーにまとめて表示します。詳細については、マルチルート ワークスペースを参照してください。
VS Code での Java プロジェクト
IntelliJ IDEA、NetBeans、Eclipse などの IDE とは異なり、「Java プロジェクト」という概念は完全に拡張機能によって提供されており、VS Code 本体のコアな概念ではありません。VS Code で「Java プロジェクト」を操作する場合は、それらのプロジェクト ファイルを処理するために必要な拡張機能がインストールされている必要があります。
たとえば、Maven、Eclipse、および Gradle の Java プロジェクトは、Language Support for Java™ by Red Hat を通じてサポートされており、Maven サポートを提供する M2Eclipse と、Eclipse JDT Language Server を介して Gradle サポートを提供する Buildship を利用しています。
Maven for Java を使用すると、Maven アーキタイプからプロジェクトを生成したり、ワークスペース内のすべての Maven プロジェクトを閲覧したり、埋め込みエクスプローラーから Maven ゴールを簡単に実行したりできます。プロジェクトは、Project Manager for Java 拡張機能を使用して作成および管理することもできます。
Visual Studio Code は、Java の概要チュートリアルで説明されているように、Java プロジェクト外のスタンドアロン Java ファイルの操作もサポートしています。
Java プロジェクトを含む VS Code ワークスペース
必要な Java 拡張機能がインストールされていると仮定すると、Java 成果物を含む VS Code ワークスペースを開くことで、拡張機能がそれらの成果物を認識し、それらを操作するためのオプションを提示します。
Java プロジェクト サポートの詳細については、Visual Studio Code での Java プロジェクト管理およびJava ビルド ツールを参照してください。
編集
コードナビゲーション
Visual Studio Code での Java は、シンボルの検索、定義をここに表示(Peek Definition)、定義への移動(Go to Definition)などのソース コード ナビゲーション機能もサポートしています。Spring Boot Tools 拡張機能は、Spring Boot プロジェクト向けに強化されたナビゲーションとコード補完のサポートを提供します。
VS Code の主な利点の 1 つは速度です。Java のソース ファイルまたはフォルダーを開くと、数秒以内に、ライトウェイト モードの助けを借りて、アウトライン ビューや 定義への移動 や 参照への移動 などのコマンドを使用してコードベースを移動できるようになります。これは、プロジェクトを初めて開くときに特に便利です。
コード補完
IntelliSense は、組み込みモジュールとサードパーティ モジュールの両方、およびすべてのファイルにわたるインテリジェントなコード補完(文脈に応じたメソッドや変数の提案)を含む、言語機能の総称です。VS Code は、Language Support for Java™ by Red Hat を通じて Java のコード補完と IntelliSense をサポートしています。また、IntelliCode と呼ばれる AI 支援の IntelliSense も提供しており、最も使用する可能性の高い項目を補完リストの先頭に表示します。
AI による補完機能の強化
GitHub Copilot は、コードをより速く、よりスマートに作成するのに役立つ AI 駆動型のコード補完ツールです。VS Code で GitHub Copilot 拡張機能を使用してコードを生成したり、生成されたコードから学習したりできます。
GitHub Copilot は、多数の言語とさまざまなフレームワークの候補を提供しており、特に Python、JavaScript、TypeScript、Ruby、Go、C#、C++ でうまく機能します。
Copilot の開始方法については、Copilot のドキュメントで詳細を確認できます。
コードスニペット
Visual Studio Code は、生産性を高めるために、class/interface、syserr、sysout、if/else、try/catch、static main メソッドなど、広く使用されているさまざまな Java コード スニペットをサポートしています。Java 言語サーバーからの情報を使用して、選択中にコード スニペットのプレビューも表示されます。
たとえば、「sout」または「sysout」と入力すると、System.out.println() のコード スニペットが生成されます。
同様に、「main」または「psvm」と入力すると、public static void main(String[] args) {} のコード スニペットが生成されます。
幅広いコード スニペットのショートカットと後置補完(postfix completion)機能をサポートしています。完全なリストを表示するには、コード スニペットを参照してください。VS Code は、さまざまなリファクタリングおよび静的解析(リンティング)機能もサポートしています。

デバッグ
Debugger for Java は、Java Debug Server に基づく軽量な Java デバッガーです。これは Language Support for Java™ by Red Hat と連携し、ユーザーが Visual Studio Code 内で Java コードをデバッグできるようにします。
デバッグ セッションの開始は簡単です。main() 関数の CodeLens に表示される Run|Debug ボタンをクリックするか、F5 キーを押します。デバッガーが適切な設定を自動的に生成します。
軽量でありながら、Java デバッガーは式の評価、条件付きブレークポイント、ホット コード置換(Hot Code Replace)などの高度な機能をサポートしています。デバッグ関連の詳細情報については、Java デバッグをご覧ください。
テスト
With the support from the Test Runner for Java 拡張機能のサポートにより、JUnit および TestNG のテスト ケースを簡単に実行、デバッグ、管理できます。
テストの詳細については、Java のテストを参照してください。
Spring Boot、Tomcat、Jetty
VS Code での Java の生産性をさらに向上させるために、コミュニティによって作成された Spring Boot、Tomcat、Jetty など、最も人気のあるフレームワークやツール用の拡張機能が用意されています。
VS Code での Tomcat や Jetty、およびその他のアプリケーション サーバーのサポートについて詳しくは、アプリケーション サーバーを参照してください。
Spring Boot のサポートは VMware によって提供されています。また、Visual Studio Code での Spring Boot のエクスペリエンスをさらに向上させるために、Microsoft から提供されている Spring Initializr Java Support および Spring Boot Dashboard 拡張機能もあります。
VS Code での Spring Boot のサポートについて詳しくは、VS Code での Spring Boot を参照してください。また、VS Code から Azure に Spring アプリをデプロイする方法については、Azure Web Apps へのデプロイまたはAzure Spring Apps へのデプロイを参照してください。
次のステップ
VS Code での Java についてさらに詳しく
- Java の概要
- コードの編集とナビゲーション
- Java デバッグ
- Java のテスト
- Java プロジェクト管理
- VS Code での Spring Boot
- アプリケーションサーバー
- VS Code での Azure
Visual Studio Code についてさらに詳しく知るには、以下をお読みください
- 基本的な編集 - 強力な VS Code エディターについて学習します。
- コードナビゲーション - ソースコードを素早く移動します。
- タスク - タスクを使用してプロジェクトのビルドなどを行います
- デバッグ - プロジェクトでデバッガーを使用する方法について説明します
