昨天本来准备更新一下 Tomcat 版本,但是发现新版本的日志打印中文会出现乱码(Tomcat 自身打印的日志),不管是使用 bat 脚本启动还是在 Idea 中启动,都是乱码。研究了一个晚上,百度上的那些方式都试遍了,都是设置各种 JVM 启动参数,发现并没有卵用。
在使用 bat 文件启动 Tomcat 时,Tomcat 目录下的 logs 文件夹会生成相应的日志文件,发现旧版本生成的日志文件编码是 GBK,而 Windows 控制台的编码也是 GBK,所以不会乱码。而新版本生成的日志文件编码是 UTF-8,所以就造成了中文乱码问题
定位到问题以后,就去看 Tomcat 的日志配置文件,tomcat/conf/logging.properties 这个文件就是 tomcat 的日志配置文件,通过使用 BCompare 对新老版本的配置文件进行对比,发现 tomcat 在新版的日志配置文件中加了指定编码为 UTF- 8 的配置。这就是乱码的根源了。
解决方法:
将配置 UTF- 8 那一行配置删除(这样应该就是采用操作系统默认编码,Windows 下即为 GBK)
将 UTF- 8 改为 GBK
若文章有任何问题,欢迎留言指出——作者博客:桔子笔记