tomcat篇-windows 运行tomcat的startup.bat时,终端打印的中文显示为乱码

当运行Tomcat的startup.bat时,如果终端中中文显示为乱码,这通常是因为Tomcat使用的日志输出编码与Windows命令行默认的编码不匹配。针对这一问题,你可以尝试以下步骤来解决:

1、执行startup.bat,在输出的窗口右击,查看属性,显示的cmd窗口的编码格式为GBK,如图

此时要修改tomcat的log日志输出格式改为GBK,和cmd格式一致。

修改Tomcat的logging配置

  • 进入Tomcat的安装目录,找到conf文件夹中的logging.properties文件。
  • 编辑该文件,找到如下一行(如果没有,可能需要手动添加):
  • java.util.logging.ConsoleHandler.encoding = UTF-8
  • 将其修改为:
  • java.util.logging.ConsoleHandler.encoding = GBK
  • 保存文件,然后重新启动Tomcat,如图

3、再次运行startup.sh,输出日志正常,如图

其它解决方案

  1. 改变CMD窗口的代码页

    • 在启动Tomcat前,先通过命令行更改CMD的编码。打开命令提示符,输入以下命令来更改代码页为UTF-8(如果你的Tomcat配置为UTF-8):

      复制代码
      1chcp 65001

      如果你的系统显示更适应GBK编码,可以使用:

      复制代码
      1chcp 936
    • 然后在同一命令行窗口中运行startup.bat

  2. 永久修改CMD的默认代码页(可选):

    • 如果你希望每次打开命令提示符时都使用特定的代码页,可以修改注册表。但请注意,修改注册表需谨慎,错误操作可能导致系统问题。
  3. 检查系统区域设置

    • 确保你的系统区域设置和语言偏好设置正确,有时候这些设置也会影响命令行窗口的默认编码。
相关推荐
阿维的博客日记3 小时前
MultipartFile 是不是表示仅仅是一个分片?
java·后端·spring·multipartfile
程序员无隅3 小时前
Coding Agent 为什么压缩上下文后还能继续工作?上下文模块设计拆解
java·开发语言·数据库
Python+994 小时前
Java 枚举类(Enum)详解:从基础到高级应用
java·开发语言·python
二炮手亮子4 小时前
浅记java线程池
java·开发语言
一路向北North4 小时前
Spring Security OAuth2.0(23):分布式系统授权-转发明文给微服务
java·spring·微服务
爱吃牛肉的大老虎6 小时前
rust基础之环境搭建
java·开发语言·rust
tellmewhoisi7 小时前
多版本共用redis的token有效期校验(过期重新登录)
java·redis·缓存
疯狂打码的少年7 小时前
【软件工程】结构化设计:模块独立性与耦合内聚
java·开发语言·笔记·软件工程
乐观的Terry7 小时前
3、数据库设计与领域实体
java·数据库·spring boot·spring cloud·ai编程
C++、Java和Python的菜鸟8 小时前
第4章 后端Web基础(基础知识)
java·开发语言