忙しい人用
JDKのバージョンによっては文字コードの相違で、VScode上のターミナルでのコンパイル時や実行時に日本語が文字化けする。
(UTF-8とShift-JISの違いなど)
色々やってターミナルとファイルの文字コードを合わせたりしたが上手くいかず、原因不明。
ファイルを右クリック→「Run Java」で実行→この場合は問題なく表示される。
数日経っての記録なので細かい再現手順などは割愛。
環境
- Windows11
- JDK 17
- VScode (Extension Pack for Javaインストール済み)
詳細
VScodeにて~~~.javaファイルを作成し、VScode上のターミナルにてjavac ~~~.java
コマンドにてコンパイル、java ~~~
にて実行するも、日本語の出力部分が文字化けする。
javaファイル自体はUTF-8、コンパイルされたファイルを観ると日本語部分の文字化けを観測。
ターミナルでchcp
を実行し文字コードを確認すると932(ShiftJIS)であることを確認。
chcp 65001
を実行し、UTF-8に変更。
コンパイルされたファイルを削除し、再度コンパイル&実行
→ 文字化け解決せず。
逆に、両方の文字コードをShift-JISに変更し、コンパイルファイル削除した後に再度コンパイル&実行
→ 文字化け解決せず。
最終的に原因が分からず、また、ファイル右クリック→「Run Java」であれば問題なく実行でき、現状そこまで不便を感じていないのでここで原因調査は切り上げた。
(他にも右上の▶ボタンでの実行もうまく動作しない。不明)