【IntelliJ IDEA】tomcat启动,打印日志乱码问题

本文记录了解决IntelliJ IDEA中Tomcat启动时控制台日志出现中文乱码的问题过程。通过排除多种可能的原因,最终确定了解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

【IntelliJ IDEA】tomcat启动,打印日志乱码问题

刚开始给idea上配置了一个tomcat,然后跟着http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/theme-settings.html

极客学院中提供的中文使用文档,配置呀配置,修改呀修改,我的编码方式呀,全都修改为UTF-8。

 

并且给tomcat的VM启动参数中配置了:-Dfile.encoding=UTF-8

然后,启动tomcat之后,控制台打印的日志中出现了中文乱码的情况:

 

然后我一一排查了我的情况:

1.在32位的idea.exe.vmoptions和64位的idea64.exe.vmoptions启动项配置文件下添加了下面

-Dfile.encoding=UTF-8
 
-Dconsole.encoding=UTF-8

2.tomcat的VM启动参数中配置了:-Dfile.encoding=UTF-8

 

 3.在startup/Connection中添加一个参数

JAVA_TOOL_OPTIONS   值为:-Dfile.encoding=UTF-8

如下图

 

4.最后我都把tomcat目录下conf目录下的自己的server.xml文件中添加了一个配置

 

5.包括我把控制台的字体都设置为可以包含中文的字体

 

=============================结局============================

到最后我都开始怀疑是不是因为我使用了黑色的样式,让我的中文不友好的显示了。

然而,并没有什么卵用,最后去在公司的电脑上,试了一遍,发现我什么都没有配置,就是好的。

============================最后的解决的方式===============================

最后,其实就是把我的tomcat的VM参数,不要配置这个【-Dfile.encoding=UTF-8】

 

再不用配这个,干掉干掉

 

其他的你配不配都无所谓,最后反正就好了。

 

### IntelliJ IDEATomcat 运行时 `println` 输出乱码的解决方案 在开发过程中,如果遇到 IntelliJ IDEA 配置 Tomcat 后台打印日志出现乱码的情况,可以通过调整编码设置来解决问题。以下是具体的解决方法: #### 方法一:通过命令行参数指定编码 可以在启动 JVM 的时候增加 `-Dfile.encoding=UTF-8` 参数[^1]。具体操作如下: 1. 打开 IntelliJ IDEA 并进入 Run/Debug Configurations 设置窗口。 2. 在 VM options 字段中加入以下内容: ```bash -Dfile.encoding=UTF-8 ``` 此方式能够确保程序运行时默认使用的字符集为 UTF-8。 #### 方法二:全局配置 IntelliJ IDEA 文件编码 为了防止因项目不同而导致的编码不一致问题,建议统一设置 IDE 的文件编码为 UTF-8[^2]。按照以下路径完成设置: 1. 菜单栏依次点击 File -> Settings (或者 Ctrl + Alt + S 快捷键打开); 2. 导航至 Editor -> File Encodings 页面; 3. 将 Global Encoding 和 Project Encoding 均设为 **UTF-8**; 4. 确认勾选 Transparent native-to-ascii conversion 选项; 5. 应用更改并重启 IDE。 #### 方法三:修改 Tomcat 日志属性中的编码格式 当后台服务端输出的日志存在乱码现象时,可能是因为 Tomcat 自身的日志处理机制未采用正确的编码标准][^[^34]。此时需手动编辑 `$TOMCAT_HOME/conf/logging.properties` 文件内的 ConsoleHandler 编码部分,将其更改为 GBK 或者其他适合本地环境的语言编码形式。例如: ```properties java.util.logging.ConsoleHandler.encoding = GBK ``` 注意替换原有的 UTF-8 定义语句即可生效。 以上三种途径任选其一执行便可有效缓解甚至彻底消除由于编码差异引发的各种显示异常状况。 ```python print("测试中文输出是否正常") # 测试代码片段用于验证最终效果 ```
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值