IntelliJ IDEA使用Tomcat8启动项目时,Tomcat日志乱码处理

1. 本地的软件版本说明

Tomcat版本:8.5.27
IntelliJ IDEA版本:Ultimate 2021.1

2. 现象描述

Tomcat部署启动ssm项目时发现三个地方的日志乱码:
Serve:服务控制台日志
Tomcat Localhost Log:Tomcat本地日志
Tomcat Catalina Log:Tomcat Catalina日志

详细参考下图:
在这里插入图片描述

3. 问题出现原因分析

一开始一直以为是idea的问题,通过各方验证,是项目中文件的编码格式与tomcat中的日志文件编码格式不一致造成的。
当我将tomcat的日志文件编码格式修改之后发现项目中的System.out.print依旧是乱码,这时候在定位发现是jvm的编码不对,需要修改jvm的编码

4. 解决方案

首先确认项目中文件的编码格式,随便在idea打开一个项目中的文件,在右下角可以看到这个文件的编码格式。如果发现项目中文件的编码格式不一致,最好将所有文件编码格式做一下统一。
在这里插入图片描述
确认了格式之后就是修改了,考虑到我们可能负责很多项目,而不同项目有不同的编码格式,因此给出两个方案

  • 方案一、只修改当前项目: 在idea的Tomcat配置界面添加启动参数:-Dfile.encoding=UTF-8 (你的项目的编码格式)
    在这里插入图片描述

  • 方案二、 直接从tomcat根源上统一编码格式:

在tomcat的路径下找个catalina.bat文件(\bin\catalina.bat)
找到该文件中的JAVA_OPTS设置的地方:
set "JAVA_OPTS=%JAVA_OPTS% -Djava.protocol.handler.pkgs=org.apache.catalina.webresources"
在后面添加编码参数: -Dfile.encoding=UTF-8

最终结果如下:
set "JAVA_OPTS=%JAVA_OPTS% -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dfile.encoding=UTF-8"

在这里插入图片描述

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值