关于 Tomcat 启动时,解决控制台输出日志乱码问题的方案

直接使用windows打开 startup.bat 文件,tomcat9 会重新打开一个cmd窗口显示日志,输出日志是乱码:

    解决办法:

        1、编辑 tomcat\bin 目录下的 startup.bat 文件

        将 call "%EXECUTABLE%" start %CMD_LINE_ARGS%  修改为  call "%EXECUTABLE%" run %CMD_LINE_ARGS%  ,如图:
image.png

2、修改 catalina.bat 文件

    将 set "JAVA_OPTS=%JAVA_OPTS% %JSSE_OPTS%"  修改为  set "JAVA_OPTS=%JAVA_OPTS% %JSSE_OPTS%  -Dfile.encoding=UTF-8"  ,如图:
image.png

3、这里还不算完,因为直接打开 startup.bat 文件,执行的时候是 windows 的 cmd 窗口,窗口的默认编码是 gbk 编码号是 936,如图:


image.png

解决办法:

            ①、运行(win+r) --> 输入 regedit 打开注册表

            ②、找到 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor]

            ③、右键
image.png

④、输入数值名称 autorun ;输入数值数据 chcp 65001。点击确定。


image.png

4、重启tomcat,成功!


image.png

注意:改成chcp 65001 之后,windows再执行其他的命令的时,有可能会出现一些问题。比如我们执行解锁 vmware 安装 mac 系统时执行 win-install.cmd,可能会出现 unknown cp65001 类型的错误。这个时候我们可以在执行 win-install.cmd 之前将编码格式换回来:chcp 936 之后再执行命令就可以。

你可能感兴趣的:(关于 Tomcat 启动时,解决控制台输出日志乱码问题的方案)