76
90

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

VS Code で Javaプログラムをデバッグ実行してみる

Last updated at Posted at 2017-10-24

月一ペースで怒涛のごとく進化を続けるVisual Studio Code(以下VS Code)だが、最近、Javaのデバッグ実行ができるようになったらしいので、試しにやってみる。

必要なもの

  • Visual Studio Code
    • 今回は1.17.2を使用。
  • Java Development Kit
    • 今回は1.8を使用。
  • Javaアプリケーションプロジェクト
    • Maven/Gradle/Eclipseのいずれか。
    • 今回はMavenプロジェクトを使用。

手順

VS Codeを起動

拡張機能Java Extention Packをインストールする

  • 拡張機能ビューを開く(Ctrl+Shift+X or ⇧⌘X)
  • 入力欄にjava packとか入力して、Java Extention Packを探す。
  • インストールをクリック
  • インストールが終わったら再読み込みをクリック
  • なお、Debugger for JavaLanguage support for Java for Visual Studio Codeも一緒にインストールされる。

image.png

Javaプロジェクトを開く

  • 実行させたいJavaプロジェクトをVS Codeで開く。
  • この時、「Java runtime could not be located」と怒られたらJDKの設定を行う。怒られなかったら先に進む。

JDKの設定

  • ユーザー設定の画面を開く(Ctrl+, or ⌘,)
  • 入力欄にjavahomeと入力すると設定項目java.homeが見つかる。
  • java.homeの左横に表示されるペンのアイコンをクリックし、「設定にコピー」をクリックすると、右側に編集可能な設定がコピーされるので、自分の環境のJDKのパスを記入して保存する。
  • VS Codeを再起動するか、プロジェクトを一旦閉じて再度開き直す。

image.png

実行

  • デバッグビューを開く(Ctrl+Shift+D or ⇧⌘D)。
  • ビュー上部の歯車アイコン(launch.jsonを開く)をクリックし、「Java」を選択。
  • .vscode/launch.jsonファイルが作られ、プロジェクト内の実行可能なクラスごとに設定を自動的に作ってくれる。
  • 実行したいクラスを切り替えたい場合は、デバッグビュー上部にあるリストボックスで選択する。

image.png

  • F5を押してデバッグを実行させる。
  • 動いた!
    実行結果はデバッグコンソールに表示される。

image.png

  • ブレークポイントは行番号の左横をクリックすると付く。
  • 再度F5で実行するとちゃんと指定箇所で処理が止まり、左側に変数の値も表示される。

image.png

  • SpringBootとかもちゃんと動くし、ちょっとした調査とか動作確認程度だったらIDEAとかじゃなくてこっちでも良さそう。

使っていて気になったこと

  • resourcesフォルダ配下にxmlとかの設定ファイルを置いている時、それらのファイルを更新してもビルドが行なわれない。プロジェクトを読み込み直すと反映される。
  • とりあえずは設定ファイルを修正したタイミングで同時に何らかのjavaファイルも更新することで手動対応。
76
90
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
76
90

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?