栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

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

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

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控制台打印输出 中文乱码 解决办法

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/862663.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号