vscodeにてJavaのデバッグ環境を作ろうとしたところ、実行結果をデバッグコンソールに表示させられず、かなりつまづいたので書いておきます。
デバッグ環境を構築&デバッグ
まずは適当なサイトを参考にしながらJDKや拡張機能をインストール。そして、テストのためにJavaのファイルを作り、デバッグコンソールに文字列を表示するだけの簡単なコードを記述してみました。
参考にしていたサイトでは、この段階でデバッグを開始したら実行結果がデバッグコンソールに表示されていましたがここで問題発生。なぜかデバッグコンソールに「hello world」の文字列が表示されないのです。
JDKをインストールし直しても、拡張機能を入れ直しても、ファイルを作り直しても、一向に表示されない…
解決方法
どんなワードで検索しても解決策が見つからず、萎えてしまい一ヶ月が経過したとき、ふと「そういえばデバッグコンソールへの出力設定とかって無いのか?」と思いつきました。
早速、設定の検索窓に「DebugConsole」と入力してみると
それらしき雰囲気の設定項目が見つかった。
英語でよくわからないのでGoogle先生に聞くと
Javaプログラムを起動するための指定されたコンソール。特定のデバッグセッション用にコンソールをカスタマイズする場合は、launch.jsonのコンソール設定を変更してください。
とのこと、いまいち訳がわかりにくいが恐らく「プログラムの実行結果を表示する場所を変えたいのなら、この設定を変更してください」という感じの意味合いだと思われる。
ということで、デフォルトとして選択されていた integratedTerminal から internalConsole へと設定を変更。そして試しにデバッグをしてみると…
しっかりデバッグコンソールに実行結果が表示されました。どうやらデフォルトの設定で、実行結果の出力先がターミナルになっていたようです。
終わりに
皆さんもvscodeなどで何かつまづいたら、まずはソフト自体の設定にそれらしき項目がないか探してみましょう。今回のように意外と簡単な設定ミスかもしれません。