IDEA上Java项目控制台中文乱码

目录

一、错误说明

二、解决方案

第一步,修改 idea64.exe.vmoptions 文件

 第二步,修改 IDE 编码

第三步,添加 vm options

第四步,编辑自定义 vm options

 第五步,重启 IDE!


一、错误说明

Java项目在 idea 上本来好好的,几天没打开,竟然全部报错,解决了报错之后又出现了其他问题,问题其中之一就是:

控制台中文乱码

具体情况,参见我的另一篇文章:

IDEA上Java项目启动全部报错

就是这篇文章的情况导致的“控制台中文乱码”。

按照网上的各种方案去解决都不行,这就影响了我代码报错解决问题吗,无奈之下,只能修改日志,中文报错改成英文,但是这个是数据迁移的代码,里面日志很多,只能先定位代码报错的大概地方,然后再去修改。虽然也解决了问题,但是很痛苦。一方面,乱码很难受,另一方面确实影响了解决问题,增大了难度。

二、解决方案

方案大致如下:

第一步,修改 idea64.exe.vmoptions 文件

在 idea 的安装目录下,找到 idea64.exe.vmoptions 文件,具体就是:

IDE 安装目录 —> bin 目录 —> idea64.exe.vmoptions

以上是针对 x86 64位电脑的,如果你的电脑是32位的,就需要修改这个文件:

idea.exe.vmoptions

不过我的2021版的没有这个32位的文件了。如果你的有的话,两个都改也不会错。

打开 idea64.exe.vmoptions 文件,加上这样一句话:

-Dfile.encoding=UTF-8

具体如下:

-Xms512m
-Xmx1500m
-XX:ReservedCodeCacheSize=512m
-XX:+IgnoreUnrecognizedVMOptions
-XX:+UseG1GC
-XX:SoftRefLRUPolicyMSPerMB=50
-XX:CICompilerCount=2
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow
-ea
-Dsun.io.useCanonCaches=false
-Djdk.http.auth.tunneling.disabledSchemes=""
-Djdk.attach.allowAttachSelf=true
-Djdk.module.illegalAccess.silent=true
-Dkotlinx.coroutines.debug=off
-Dfile.encoding=UTF-8

 第二步,修改 IDE 编码

file —> settings  —> Editor  —> File Encodings

 如图:

 我的 IDE 添加了中文插件,所以是这么显示的。

第三步,添加 vm options

打开执行应用程序那个地方,点击“编辑配置”,在 vm options 这个地方,添加参数:

-Dfile.encoding=UTF-8

 注意:这个参数只有在旗舰版的才会显示出来。

我的 IDE 是社区版的,没有这个参数,当时胡乱的就加在了其他地方:

 当时加在了上图的红色方框呢,结果呢,自然是没用的,还是乱码。但是大家看我上面的图,确实在 vm options 这个地方添加了参数。这个是怎么来的呢?其实很简单,只是我们不知道而已。分享我的一篇文章:

idea 社区版设置 vm options 参数

至此,网上很多方案就结束了,也确实能解决很多人的问题。但是有时候是不行的,还少了一步。

第四步,编辑自定义 vm options

HELP —> Edit Custom VM OPtions

 打开该文件,添加参数:

-Dfile.encoding=UTF-8

 

 第五步,重启 IDE!

以上方案,亲测可用。

这里分享给一篇文章:

java控制台打印输出 中文乱码 解决办法

  • 5
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

北冥牧之

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值