intellij和docker运行均出现中文乱码

背景

 intellij运行模块,控制台打印日志中文乱码。容器打印日志同样。最早未上测试环境时,本地是正常打印的。半个月前上测试环境,需要打成镜像,发现容器打印日志中文乱码。当时在网上找到解决办法,改父pom的配置,但忘记提交(因为自己只是多个模块中的一个模块的开发,动父pom这种公共的东西,没太积极提交代码),今天更新代码,把本地给冲掉了。于是今天遇到了本地运行日志乱码,clean一下再运行又正常显示中文,但过一会儿重新运行又乱码的随机现象。同时,容器不管重新打几次镜像,日志中文始终是乱码。

解决

 参考http://t.zoukankan.com/slankka-p-13925687.html解决了。与我上次搜到的差不多,上次搜到的那篇改的配置更多一些,但已找不到了。如下即可解决:

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-compiler-plugin</artifactId>
  <configuration>
    <source>1.8</source>
    <target>1.8</target>
    <encoding>UTF-8</encoding>
  </configuration>
</plugin> 

 与参考链接背景不一样的是,我本地运行也是不稳定的乱码,加上上述配置后,本地百分百中文正常。容器也是。另外,我也检查过settings->file encoding,全都是UTF-8。尝试过设置servlet为UTF-8。但由于注意到运行日志中文为乱码,所以确定不是web设置原因。
 感谢bf帮我定位到业务代码问题。容器打印日志有超时相关的,中文正常,超时前面几行是我的业务代码打印的中文却是乱码。可能原因,如果看完文章,因该能猜到:打印超时的代码在依赖的jar包里,可能通过aop生效的,打这个依赖jar用的编码应该是UTF-8。我的业务代码,打包设置在父pom,没有加<encoding>UTF-8</encoding>,好奇不加的话,maven是用什么编码来给我打包的。

待做

 maven官网学习

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值