关于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就没有问题了。

相关推荐
w_zero_one1 小时前
算法--模拟
java·数据结构·算法
Javatutouhouduan1 小时前
阿里1658页Java面试题总结(含答案)
java·高并发·java面试·java面试题·后端开发·java程序员·java八股文
秋天的怀念_David1 小时前
算法一千零一夜 · 第十三夜 幻方,武侠世界里的数学迷宫
java·程序人生·算法
专业程序开发源1 小时前
springboot欧缇蔓月子中心管理系统82697-计算机课程设计、毕业设计
java·spring boot·后端·python·spring·django·课程设计
秋天的怀念_David2 小时前
算法一千零一夜 · 第十四夜 幻方与奇妙的二进制
java·程序人生·算法
thefool1122662 小时前
网络编程^
java
Thinker QAQ2 小时前
并发编程(十一):Shared Memory 与 Message Passing——关系与组合使用
java·python·go·并发编程·shared memory·message passing
齐 飞3 小时前
idea中git误操作撤回git reset --hard ‘HEAD@{1}‘
java·git·intellij-idea
你的保护色3 小时前
多AS互联BGP4综合实验设计
java
某不知名網友3 小时前
ROS2进阶:服务通信、自定义SRV接口、参数服务器与基于服务的参数通信详解
java·开发语言·microsoft