标题中实际上描述了整个问题,我不确定我还能说什么, 但是这里有一些细节,也许会有所帮助:
我使用最新的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=UTF8
和chcp 65001
命令之类的JAVA_OPTS和CATALINA_OPTS。我的Windows命令行显示西里尔字母正确,但是tomcat控制台仍然显示除单词以外的所有内容。 :/
只有Dfile.encoding=cp866
参数可以节省一天的时间,并且可以修复控制台。
但是在这种情况下,tomcat日志文件变得不可读。
还有一件事!拉丁字母和数字在任何情况下都可以正常显示。
所以...我几乎会尝试所有可能的事情,如果您有任何建议,那太好了! 谢谢。