VSCode上でのデバッガ(Debugger for Java)の使い方 †準備編 - デバッグ用拡張機能のインストール †1) 画面の左側に5つのアイコンが並んでいるはずなので、 一番下のアイコンをクリックして拡張機能の管理画面を開く (ショートカット: ctrl + shift + x) 2) 開いた画面の上部にある検索バーに java pack と入力し、 検索結果から Java Extension Pack という項目をクリック 3) インストールボタンをクリック 4) しばらく待つと再読み込みボタンが出てくるので、クリックしてインストール完了 実行編 †1) ソースコードを保存するための空フォルダを開く (ショートカット: ctrl + k ctrl + o) 2) メニューバーから ファイル -> 新規ファイル を開いてjavaファイルを作る (ショートカット: ctrl + n)
3) メニューバーからデバッグ -> 構成の追加をクリックし、表示されたバーでJavaを選択 4) launch.jsonというファイルが作られたのを確認
5) メニューバーからデバッグ -> デバッグの開始をクリックするとデバッグモードでプログラムが実行される (ショートカット: F5) 標準入力を使うプログラムをデバッグするときの注意 †自動生成されたlaunch.jsonの設定では標準入力が使えないため、 標準入力を利用するプログラムをデバッグする際には launch.jsonを編集する必要がある。 具体的には "console": "internalConsole" となっている箇所を "console": "integratedTerminal" に変更することで、下画面のターミナル上で標準入力を使った対話的なプログラムの実行ができるようになる。 Tips †同じフォルダ内で複数のjavaファイルがある場合に、デバッグする対象を切り替えたい †launch.json内のmainClassという項目を、デバッグしたいmain関数が含まれるクラス名(≒ファイル名)に書き換える。 例) Javaフォルダ以下にHello.javaを作ってデバッグした後、同じフォルダ内でCalc.javaを作成・デバッグしたい場合 launch.jsonを開き、 "mainClass": "Main", となっている箇所を "mainClass": "Calc", に書き換える。 その後、メニューバーからデバッグ -> デバッグの開始 をクリックすると、 Calc.java内のmain関数が実行される。 ファイル名を変えたらデバッグができなくなった(could not find or load class ~ と表示される) †まずは、これを試して解決しないかを確かめる。 それでも解決しない場合は、以下の2つのどちらかを試す。 A.簡単な修正方法 †変更前のファイル名で新しく空ファイルを作りなおす。 B.複雑な修正方法 †1) launch.json内でconsole: integratedTerminalを指定した後、デバッグを実行して失敗させる。 2) ターミナルに表示されているコマンドから、 -cp の後に続く C:\...\binと表示されているパスを 末尾の \binの部分を除いて コピーする。 2) メニューバーのファイル -> ファイルを開く から、先ほどコピーしたパスに移動して、 .projectというファイルを開く。 3) 変更前のファイル名が書かれているlinkタグを探し、削除する。 例) Main.java を Calc.javaにリネームしてしまい、デバッグに失敗した場合 <linkedResources> <link> <name>src\Calc.java</name> <type>1</type> <location>(省略)\Calc.java</location> </link> <link> <name>src\Main.java</name> <type>1</type> <location>(省略)\Main.java</location> </link> </linkedResources> となっているはずなので、src\Main.javaが含まれているlinkタグを削除する。 <linkedResources> <link> <name>src\Calc.java</name> <type>1</type> <location>(省略)\Calc.java</location> </link> </linkedResources> A, Bのどちらかを実行することで、正常にデバッグが可能になる。 それでも解決しない場合は、TAに相談すること。 |