IDEA中,使用的JDK21,控制台打印中文乱码,解决办法是重装了一下JDK。
我之前安装的版本是"jdk-21_windows-x64_bin.exe",我配置了多个JDK环境,所以使用的是安装文件进行安装的。这次解决乱码问题,我重新安装了一遍,用的是"jdk-21_windows-x64_bin.msi"。
是否是更换JDK安装包解决的乱码我不敢确认,由于我已经安装了一版,因为安装过程中需要重启电脑重置我的配置在进行的安装,所以我猜不准是不是这个步骤解决的乱码问题。不确定是因为,我在解决控制台乱码的过程中也重启过电脑,但是并没解决。
说明:重装JDK是我看到其余同行们的记录,上面说到,JDK的不同版本,内置的编码格式不一样,有的是GBK,有的是UTF-8,这块的资料如果感兴趣还行自行研究一下。
我的IDEA设置的编码格式都是UTF-8,在使用JDK8,JDK11,JDK17的时候没有出现过控制台打印的中文是乱码的情况,只有这个JDK21是,因此怀疑是JDK的问题。
以下是我尝试过的设置,但是没有解决乱码问题:
1、IDEA设置全局编码为UTF-8,这个一直是这样设置的;
2、添加参数"-Dfile.encoding=UTF-8"
a)运行配置里面的Program arguments中添加参数;
b)Java Complier中添加参数;
c)idea64.exe.vmoptions里面添加参数;
d)VM Options里面添加参数;
3、更改IDEA的编码为GBK,就是把原先设置为UTF-8的地方全部设置为GBK,这样是为了和JDK的编码保持一致(我没有这么试过)
以上方法,过程中重启过IDEA,重启过电脑。
最后想要找一版所谓的UTF-8的JDK21版本,没找到有明确说明JDK还分编码的,就死马当做活马医重新下载了安装包安装了一遍,莫名其妙问题解决。
仅供遇到类似问题的同学参考!