windows idea控制台中文乱码解决

刚刚用Windows 10 专业版装idea启项目,发现控制台的中文都乱码了,下意识先看一下项目的编码是不是不对。于是就有下面的设置项目的编码的各种方式

1.File Encodings
windows idea控制台中文乱码解决_第1张图片

2.java compiler
windows idea控制台中文乱码解决_第2张图片

3.tomcat 设置windows idea控制台中文乱码解决_第3张图片

到此,还是不能解决我的控制台中文乱码,上面涉及的应该是项目的编码,idea本身的编码也要修改一下,打开idea安装的位置找到:
idea64.exe.vmoptions 增加一个配置-Dfile.encoding=UTF-8,然后重启idea,

-Xms128m
-Xmx750m
-XX:ReservedCodeCacheSize=240m
-XX:+UseConcMarkSweepGC
-XX:SoftRefLRUPolicyMSPerMB=50
-ea
-XX:CICompilerCount=2
-Dsun.io.useCanonPrefixCache=false
-Djava.net.preferIPv4Stack=true
-Djdk.http.auth.tunneling.disabledSchemes=""
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow
-Djdk.attach.allowAttachSelf
-Dkotlinx.coroutines.debug=off
-Dfile.encoding=UTF-8

发现还是不行,我想这个tomcat catalina输出的日志,修改了一下tomcat config下面的logging.properties

1catalina.org.apache.juli.AsyncFileHandler.level = FINE
1catalina.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs
1catalina.org.apache.juli.AsyncFileHandler.prefix = catalina.
1catalina.org.apache.juli.AsyncFileHandler.encoding = UTF-8

2localhost.org.apache.juli.AsyncFileHandler.level = FINE
2localhost.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs
2localhost.org.apache.juli.AsyncFileHandler.prefix = localhost.
2localhost.org.apache.juli.AsyncFileHandler.encoding = UTF-8

3manager.org.apache.juli.AsyncFileHandler.level = FINE
3manager.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs
3manager.org.apache.juli.AsyncFileHandler.prefix = manager.
3manager.org.apache.juli.AsyncFileHandler.encoding = UTF-8

4host-manager.org.apache.juli.AsyncFileHandler.level = FINE
4host-manager.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs
4host-manager.org.apache.juli.AsyncFileHandler.prefix = host-manager.
4host-manager.org.apache.juli.AsyncFileHandler.encoding = UTF-8

java.util.logging.ConsoleHandler.level = FINE
java.util.logging.ConsoleHandler.formatter = org.apache.juli.OneLineFormatter
java.util.logging.ConsoleHandler.encoding = UTF-8

修改之后重启项目发现还是乱码,网上有说Windows 默认是gbk,然后我修改成gbk后启动,发现tomcat的日志是中文了,但是项目日志输出还是乱码,这也起不了作用啊

重点

最后在Google看到一个博客,说Windows本身读取idea的配置可能不是直接找安装位置,在C盘可能已经先读取一份配置从来覆盖了idea实际的配置,根据指示找到idea的菜单栏 help>Edit Custom VM options…
windows idea控制台中文乱码解决_第4张图片
打开如下:
-Xmx2042m
-XX:ReservedCodeCacheSize=240m
-XX:+UseConcMarkSweepGC
-XX:SoftRefLRUPolicyMSPerMB=50
-ea
-XX:CICompilerCount=2
-Dsun.io.useCanonPrefixCache=false
-Djava.net.preferIPv4Stack=true
-Djdk.http.auth.tunneling.disabledSchemes=""
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow
-Djdk.attach.allowAttachSelf
-Dkotlinx.coroutines.debug=off

新增配置 -Dfile.encoding=utf-8

至此,项目启动没有中文乱码。

你可能感兴趣的:(idea,java)