idea下项目Tomcat启动日志乱码解决方案

解决思路:日志输出乱码应该是编码方式的不一致导致,故需要考虑将所以设计的编码方式设置一致,故将编码方式都设置UTF-8。

1、设置tomcat

  1. 设置tomcat文件夹下的conf文件夹下的server.xml文件 URIEncoding="UTF-8" ,如图:
  2. 在tomcat主目录下找到/conf/logging.properties这个文件,用文本编辑器打开,其中有一行
    java.util.logging.ConsoleHandler.encoding = UTF-8,这项新版本Tomcat一般已经设置为了utf-8,如果不是则修改为utf-8。

2、设置idea项目编码方式

点击file->Setting->Editor后选择文件编码。如图设置编码格式

3、修改idea的虚拟机参数

在文件最后加一行-Dfile.encoding=UTF-8 然后清楚缓存重启idea。

4、设置启动虚拟机参数

tomcat启动日志正常,而项目日志乱码,这时还需要多一步设置项目启动虚拟机参数
-Dfile.encoding=UTF-8

如果是命令行启动tomcat,可以在tomcat安装目录下/bin/catalina.bat,用文本编辑器打开,在首行加上一句
JAVA_OPTS="-Dfile.encoding=UTF-8",保存然后重新启动 。

经过以上四步操作,基本上可以解决点tomcat启动后,后台日志报错问题。

相关推荐
间彧37 分钟前
SimpleDateFormat既然不推荐使用,为什么java 8+中不删除此类
java
间彧43 分钟前
DateTimeFormatter相比SimpleDateFormat在性能上有何差异?
java
间彧1 小时前
为什么说SimpleDateFormat是经典的线程不安全类
java
MacroZheng1 小时前
横空出世!MyBatis-Plus 同款 ES ORM 框架,用起来够优雅!
java·后端·elasticsearch
用户0332126663672 小时前
Java 查找并替换 Excel 中的数据:详细教程
java
间彧2 小时前
ThreadLocal实现原理与应用实践
java
若水不如远方2 小时前
Netty的四种零拷贝机制:深入原理与实战指南
java·netty
用户7493636848432 小时前
【开箱即用】一分钟使用java对接海外大模型gpt等对话模型,实现打字机效果
java
SimonKing2 小时前
一键开启!Spring Boot 的这些「魔法开关」@Enable*,你用对了吗?
java·后端·程序员