关于tomcat乱码和idea中控制台乱码的问题

在使用tomcat的时候,发现在windows的dos命令中输出中文乱码,故设置tomcat的utf-8改为gbk。然后dos命令不乱码了。

在使用idea2023.2版本时候。发现idea的控制台打印乱码。于是又把idea编码和tomcat编码统一成utf-8了,此时控制台没有乱码,但是tomcat打印日志会乱码。对此网上教程很多,例如修改vm options,修改jvm等配置,一通折腾

老版本(如 2023.2.3)中,如果你的系统是 Windows 中文版,IDEA 控制台可能默认使用 GBK 编码,而你的 Tomcat 设置用的是 UTF-8,这就造成:

而我在使用idea2023.3.8版本的时候,发现同样的配置,即为了解决tomcat的乱码问题,我将tomcat设置GBK,此时没有对idea进行修改,idea控制台就没有乱码了。据说是IDEA 2023.3+ 改进了对 JVM 输出编码的自动识别,不过这个需要jdk也比较新,估计要求18即以上版本才行。

此时idea配置没有变动:

从 2023.3 开始,JetBrains 对运行/调试控制台的 输出编码自动匹配机制更智能,可以根据 file.encoding 自动适配控制台字符集。

个人推荐直接升级版本,尤其现在2025年了使用2023.3的版本也不算新,何不使用新版本呢,省的修改一通,可能在修改过程中导致埋下隐藏的问题。

此外,jetbrains也提出了一些解决方案:
在使用 IntelliJ IDEA 时遇到的一些乱码问题的解决方案

展示


对于之前的情况,就是server可以正常显示了,catalina.log就乱码,catalina.log正常了,server就乱码,总是至少一方有问题。现在使用idea2023.3.8+jdk21+tomcat10+设置tomcat的编码为GBK就没有问题了。

相关推荐
艾莉丝努力练剑4 分钟前
【C/C++】类和对象(上):(一)类和结构体,命名规范——两大规范,新的作用域——类域
java·c语言·开发语言·c++·学习·算法
myNameGL17 分钟前
下载一个JeecgBoot-master项目 导入idea需要什么操作启动项目
java·ide·intellij-idea
Emotion亦楠36 分钟前
Java 学习笔记:常用类、String 与日期时间处理
java·笔记·学习
郝学胜-神的一滴1 小时前
Spring Boot Actuator 保姆级教程
java·开发语言·spring boot·后端·程序人生
jiangxia_10242 小时前
面试系列:什么是JAVA并发编程中的JUC并发工具类
java·后端
草莓爱芒果2 小时前
Spring Boot中使用Bouncy Castle实现SM2国密算法(与前端JS加密交互)
java·spring boot·算法
慕y2742 小时前
Java学习第九十三部分——RestTemplate
java·开发语言·学习
旋风菠萝2 小时前
设计模式---单例
android·java·开发语言
AI视觉网奇3 小时前
音频获取长度
java·前端·python
FC_nian3 小时前
IDEA配置(Maven)
java·maven·intellij-idea