Tomcat cyrillic控制台输出-编码错误

时间:2019-03-19 12:20:46

标签: java windows logging log4j tomcat6

标题中实际上描述了整个问题,我不确定我还能说什么, 但是这里有一些细节,也许会有所帮助:

我使用最新的log4j-1.2.17.jar版本,
Config位于log4j.xml文件中,并且可以工作。

配置如下的Appender:

<appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
        <param name="Target" value="System.out"/>
        <param name="Threshold" value="INFO"/>
        <param name="encoding" value="UTF-8" />

        <layout class="org.apache.log4j.PatternLayout">
            <!-- The default pattern: Date Priority [Category] Message\n -->
            <param name="ConversionPattern" value="%d{ABSOLUTE} %-5p [%c{1}] %m%n"/>
        </layout>
    </appender>

我在窗口cmd中尝试了Dfile.encoding=UTF8chcp 65001命令之类的JAVA_OPTS和CATALINA_OPTS。我的Windows命令行显示西里尔字母正确,但是tomcat控制台仍然显示除单词以外的所有内容。 :/

只有Dfile.encoding=cp866参数可以节省一天的时间,并且可以修复控制台。 但是在这种情况下,tomcat日志文件变得不可读。

还有一件事!拉丁字母和数字在任何情况下都可以正常显示。

所以...我几乎会尝试所有可能的事情,如果您有任何建议,那太好了! 谢谢。

0 个答案:

没有答案