在windows Intellij idea 控制台下乱码
通过以下几种方式处理:
1.File Encodings
2.java compiler
3.tomcat 设置
到此,还是不能解决我的控制台中文乱码,上面涉及的应该是项目的编码,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的日志是中文了,但是项目日志输出还是乱码,这也起不了作用啊
重点
4.Edit Custom VM options
最后在Google看到一个博客,说Windows本身读取idea的配置可能不是直接找安装位置,在C盘可能已经先读取一份配置从来覆盖了idea实际的配置,根据指示找到idea的菜单栏 help>Edit Custom VM options…
打开如下:
-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
至此,项目启动没有中文乱码。
前面1,2,3方法都不能解决我的问题,最后第4种方法处理了我的问题
原文链接:https://blog.youkuaiyun.com/qq_24514845/article/details/100699654