springboot通过jar包启动中文日志乱码问题及解决
作者:itdragons
这篇文章主要介绍了springboot通过jar包启动中文日志乱码问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
jar包启动中文日志乱码
问题场景
1.idea控制台中文正常
2.打成jar包,通过java -jar运行,通过log打印的日志出现中文乱码,System.out.print("")输出正常。
最终定位到logback.xml配置文件
修改前:
<include resource="org/springframework/boot/logging/logback/base.xml" />
修改后:
<include resource="org/springframework/boot/logging/logback/defaults.xml" /> <appender name="console" class="ch.qos.logback.core.ConsoleAppender"> <encoder> <pattern>${CONSOLE_LOG_PATTERN}</pattern> </encoder> </appender> <root level="INFO"> <appender-ref ref="console" /> </root>
${CONSOLE_LOG_PATTERN}在defaults.xml中已定义,可以重写。
springboot jar部署 控制台日志乱码
springboot项目打包jar文件 java -jar启动后,logger日志中文乱码
试了很多种办法,CHCP 65000切换cmd编码无效,更改项目编码utf-8一样,增加启动参数 -Dfile.encoding=UTF-8也没效果。
解决办法
将logback-spring.xml 中的所有<charset>UTF-8</charset>注释掉 即可解决
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。