解决tomcat双击startup.bat乱码的几种方法

新环境,win10,今天下载了tomcat9.0.98,是压缩绿色版的,解压缩安装到了:

D:\java\apache-tomcat-9.0.98

可以通过‪D:\java\apache-tomcat-9.0.98\bin\startup.bat双击来启动tomcat。

但是日志显示乱码。

后来找到了几种方法,其实核心还是还是改CodePage,不想改tomcat的日志文件记录编码为gbk,所以找其他方法,650001是utf-8,936是gbk。

不生效的方法:

第一种:

打开startup.bat,第一行增加内容:

bash 复制代码
chcp 65001

结果无效。

第二种:

注册表中,增加:

bash 复制代码
计算机\HKEY_CURRENT_USER\Console\%SystemRoot%_System32_cmd.exe

然后修改或增加一个Dword32值:

bash 复制代码
CodePage值为65001(十进制)

不行。

生效的方法:

第一种:

修改:

bash 复制代码
计算机\HKEY_CURRENT_USER\Console\%SystemRoot%_System32_WindowsPowerShell_v1.0_powershell.exe
bash 复制代码
计算机\HKEY_CURRENT_USER\Console\%SystemRoot%_SysWOW64_WindowsPowerShell_v1.0_powershell.exe

下的CodePage,值改为65001(十进制)

仍然不行。

最后我这里是这种方法:

在路径中调整:

bash 复制代码
计算机\HKEY_CURRENT_USER\Console\Tomcat

下的CodePage,值改为65001(十进制)

如果没有的话,将如下内容保存为tomcat.reg,执行,就行了。

bash 复制代码
Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Console\Tomcat]
"CodePage"=dword:0000fde9
"FontFamily"=dword:00000036
"FontWeight"=dword:00000190
"FaceName"="新宋体"
"CursorType"=dword:00000000
"InterceptCopyPaste"=dword:00000000
"FontSize"=dword:000e0000
相关推荐
古法安卓2 小时前
Android-日志系统源码解析
android·java·android studio
小夏coding3 小时前
从"一把梭"到"精妙拆解" —— 滑动窗口计时框架的设计演进
java·后端
MacroZheng4 小时前
同事问我:"Claude Code经常失忆,不怕它把项目搞炸?",我:"怕,三个Markdown文件给它装个永不丢失的外置大脑!"
java·人工智能·后端
十年Java程序媛6 小时前
深度实战:JDK21 虚拟线程 + HikariCP 生产正确配比、坑点、监控全套
java·spring boot
xiaoqiMikko6 小时前
有人在搜一个不存在的 Tomcat 版本
java·tomcat
用户3126874877209 小时前
ConcurrentHashMap 怎么保证线程安全?从分段锁到 CAS+synchronized
java
vipxieliang9 小时前
ValidX vs Apache Commons Validator:功能与性能对比
java·spring boot
SimonKing9 小时前
升级Spring Boot 4后,从 Jackson 2 到 3,到底有哪些变化
java·后端·程序员
吃饱了得干活10 小时前
一篇讲清楚Spring Boot:自动装配、启动器、过滤器、拦截器、设计模式
java·spring boot·后端
lhldsg11 小时前
AI零售系统实战指南:从架构设计到落地部署全解析
java·人工智能·小程序·uni-app·零售