• 解决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

  • 相关阅读:
    @Transactional千万不要这样用!!踩坑了你都可能发现不了!!!
    《HelloGitHub》第 90 期
    photoshop插件开发入门(java,android,ios)
    入门力扣自学笔记140 C++ (题目编号946)
    普通人想要通过互联网来赚钱,无非就是在这些平台上面来下功夫
    Vue再次入门<一>互动教程
    Android 编译C++
    什么是鱼叉式网络钓鱼?
    测量学4_距离测量
    雷电模拟器dnconsole命令汇总
  • 原文地址:https://blog.csdn.net/m0_67393039/article/details/126616610