Tomcat中catalina.bat设置为UTF-8控制台出现乱码
1、catalina.bat中必须设置为UTF-8,如果我不设置为UTF-8,页面接收到的就是乱码了,尝试过各种UTF-8的调试,都无解,最后还是只能在catalina.bat的set "JAVA_OPTS=%JAVA_OPTS% %JSSE_OPTS% -Dfile.encoding=UTF-8" ,加上UTF-8问题就可以解决了,但是tomcat的命令框和输出日志都是乱码。
2、如果是用编译工具,在IDEA编译器中的VM options:设置-Dfile.encoding=UTF-8,或eclipse 的设置中 改成utf-8 输出的问题可以解决。但是在windows服务器上用tomcat部署的时候,乱码解决不了。
3、在service.xml中,加上UTF-8,试过是无用的,依旧乱码。
<Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8433" URIEncoding="UTF-8" /><Connector port="8009" protocol="AJP/1.3" redirectPort="8433" URIEncoding="UTF-8"/>
问题原因:
windows默认编码集为GBK,由于使用startup.bat启动tomcat时,它会读取catalina.bat的代码并打开一个新窗口运行。打开的cmd默认编码可能不是utf-8,与系统编码不一致,所以导致乱码。
解决方法:
修改cmd命令行的编码,打开注册表,找到HKEY_CURRENT_USER→Console→Tomcat(如果你改了tomcat的标题栏,这里就是你打开的命令窗口的名字),找到CodePage项,没有则创建,更改值为十进制的65001,点击确定。
到此这篇关于Tomcat中catalina.bat设置为UTF-8控制台出现乱码的文章就介绍到这了,更多相关Tomcat catalina.bat设置为UTF-8内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
相关文章:
1. tomcat启动异常:子容器启动失败(a child container failed during start)2. 浅谈Tomcat内存配置的正确姿势3. tomcat漏洞汇总4. Tomcat处理请求的流程5. tomcat报错:地址localhost:8080已在使用中的解决方法6. tomcat logs 目录下各日志文件的解析(小结)7. Tomcat进程假死问题排查8. 腾讯云服务器tomcat端口无法访问的解决方法9. Tomcat进程占用CPU过高的解决方法10. 解决Tomcat启动失败:严重 [main] org.apache.catalina.util.LifecycleBase.handleSubClassException 初始化组件失败