• 解决idea下tomcat乱码


    说明

    系统:win10家庭版

    环境:tomcat7+jdk8+idea2019.3

    目标:idea下的 Server,Tomcat Localhost Log, Tomcat Catalina Log,以及本地生成的日志文件输出的中文都不会乱码

    场景回顾:从服务器上拉下来的代码编码格式是 UTF-8 的,idea通过Settings-》Editor-》File Encodings全部都设置为了UTF-8,之后启动tomcat后,发现Tomcat Catalina Log面板中涉及中文字符的全部都乱码了。网上看了好多篇博客,解决方法无非就是下面几种!

    1、在IDEA中打开 Tomcat配置页面,在VM option 项中加入**-Dfile.encoding=UTF-8**

    2、你自己的Tomcat目录下的-》conf-》logging.properties这个文件,把一些或者全部都改成GBK编码(这里说明一下:这里改编码确实能一定程度解决问题,我在这里盘旋了很久,因为有些博客叫我一部分改成GBK有一些又叫我全部改成GBK,这里修改不同的地方影响的不同。但是这些都不能完全解决上面说的那4个地方全部不会乱码)

    3、修改idea安装目录-》bin下两个文件【idea64.exe.vmoptions】【idea.exe.vmoptions】

    在后面加上

    -Dfile.encoding=UTF-8

    或者 这两个

    -Dfile.encoding=UTF-8
    -Dconsole.encoding=UTF-8

    4、在idea的tomcat配置那-》Startup/Connection那一栏最底下添加几个参数

    name value

    JAVA_OPTS -Dfile.encoding=UTF-8

    JAVA_TOOL_OPTIONS -Dfile.encoding=UTF-8

    以上那么多种方式,我全部都试过了。但是那4处地方,总有几个地方还是会乱码!!!

    解决思路

    上面说的那些方式,第二种是有效果的。但是你会发现输出到日志文件乱码了。因为你毕竟tomcat配置log那设置了GBK了。这铁定会导致乱码的,所以解决思路就是全部东西统一弄成UTF-8不就好了。但是问题是上面如果全部都设置成了UTF-8。你会发现还是不起作用。明明都在idea配置文件中都指定输出格式为UTF-8了为什么还不行?原因就是你设置的这两个文件【idea64.exe.vmoptions】【idea.exe.vmoptions】他不是你正在使用环境的配置文件。你如果要设置你正在使用环境的配置。你应该要去idea-》Help-》Edit Custom VM Options这里面去设置(如下图)

    在这个文件中添加以下这一行(tomcat那边的配置文件全部改成UTF-8【默认貌似也是那么设置】)

    -Dfile.encoding=UTF-8

    这时候,你再启动项目看看。Server,Tomcat Localhost Log, Tomcat Catalina Log,以及本地生成的日志文件中文都显示正常了!

    参考链接

    https://blog.csdn.net/qin904863396/article/details/105839014

  • 相关阅读:
    python自动化爬虫实战
    【分析笔记】全志 i2c-sunxi.c 控制器驱动分析
    有效的字母异位词 C
    接口测试学习笔记(基础知识、Jmeter、Postman)
    Scala | 宽窄依赖 | 资源调度与任务调度 | 共享变量 | SparkShuffle | 内存管理
    Android 9.0 framework中关于Activitity的生命周期的源码讲解
    httprunner实战接口测试笔记,拿走不谢
    基于树莓派的安保巡逻机器人--(一、快速人脸录入与精准人脸识别)
    Redis哨兵模式
    Technical Support Website Statement
  • 原文地址:https://blog.csdn.net/m0_67393039/article/details/126616610