VS CodeでJava開発環境を構築した話

最近、スクリプト言語(JavaScript, Node JS, PHP, etc)でコーディングする際は、とりあえずVS Codeを使っています。
デフォルト設定でプレビューが見れるので、Markdownも使ってたりします。
動作が軽量なので、個人的には結構好きなエディターです。
なんとなく拡張機能について調べていると、以外にもJavaに関するものがあったので、どれぐらい快適なのか試してみました。

 

ところで、IDEに関するランキングを掲載している「Top IDE index」(2018/06月時点)によると、
2位「Eclipse
4位「NetBeans
5位「IntelliJ
10位「VS Code」
なので人気のIDE・エディターには分類されるが、Javaだとイマイチなのかもしれません。
余談ですが、個人的に「Eclipse」と「IntelliJ」の間に「NetBeans」がランクインしているのに驚きました。
(周りで使っている人を聞いたことがなかったので…)

環境構築手順

まずは、何より、拡張機能をインストールします。
今回は人気の「Java Extension Pack」をインストールしてみました。
内部で以下の拡張機能をインストールしてくれるみたいです。

  • Language Support for Java(TM) by Red Hat
    これをインストールすると、Eclipseで利用可能な機能の一部が利用可能になります。
    長くなるので、省略しますが、上記サイトの「Features」部分に利用可能な機能が紹介されています。
  • Debugger for Java
    名前の通りデバッグを可能にする拡張機能です。
  • Maven for Java
    VS CodeでMaven(プロジェクト管理ツール)を利用可能にする拡張機能です。

次に、JDKのパスをVS Codeに追加します。
画像のように画面下部の歯車アイコンをクリックした後、設定を選択して「User Settings」を開き、「java.home」にJDKのパスを追加します。

 

 

 

 

 

 

 

とりあえずこれでコーディングできるはずなので、書いてみました。
IntelliSenseが効いているので、画像のようにかなり快適に書くことができました。

 

 

 

 

 

次に、デバッグ用の設定ファイルを作成します。
画像のようにデバッグビューを開いた後、歯車アイコンを選択してJava用の「launch.json」を作成します。
今回はとりあえず動くことを確認したかったので、デフォルトの設定のまま保存しました。

 

 

 

 

 

いざF5(デバッグ)を押して実行したところ、実行結果の日本語部分が文字化けする問題が起こりました。

実行結果

[縺薙s縺ォ縺。縺ッ, Hello]

 

VS Codeでは日本語の文字化け問題はあるあるなので、とりあえずGoogle先生にお聞きしました。
似たような問題にぶつかった方々がいらっしゃるようで、以下の方法などを試してみました。
結果から言うとどの方法もだめでした。

  • User Settings」を開き、「java.jdt.ls.vmargs」に「-Dfile.encoding=UTF-8」を設定する。
    ビルド処理時にJVMに文字コードを通知するオプション。
  • 同様に「User Settings」を開き、「files.autoGuessEncoding」をtrueに変更する。
    ファイルを開く際に、文字コードを推測するオプション

原点に立ち戻り、そもそも自分で作成した「Main.java」が悪さをしてるかもしれないので、文字コードを「UTF-8」から「UTF-8(ボム付き)」に試しに変え、F5を実行してみました。

実行結果

[こんにちは, Hello]

 

無事に出力してくれました!!

Spring」などのフレームワークを使う際、どれぐらいIntelliSenseが有効なのか等わかりませんが、簡単なプログラムならこれからは、EclipseよりもVS Codeを使って見ようかと思いました。