nacos文件解析错误:org.yaml.snakeyaml.error.YAMLException: java.nio.charset.MalformedInputException

今天在打完镜像之后在本地运行时,出现了org.yaml.snakeyaml.error.YAMLException: java.nio.charset.MalformedInputException: Input length = 1这个错误。接下来我第一步是去运行一下jar包,看看jar是不是正常的,同时看一下别的镜像和jar包有没有这样的问题。最后发现只有业务微服务出现这个问题。同时日志的最后一行显示的内容是:If you have database settings to be loaded from a particular profile you may need to activate it (no profiles are currently active).但是我的配置文件都是写在nacos上面的。

首先,先要明确是什么问题:nacos文件解析错误。可能是因为文件编码的问题,因为配置文件中是中英文混杂的。所以我先看了一下idea的文件编码类型。点击路线:File - settings-editor-file encoding 确保自己的三个红框都是UTF-8的编码。

然后重启启动了jar包,发现还是不行,上网搜了一下才明白idea的Terminal和cmd一样都是以GBK为默认编码格式。所以加上了-Dfile.encoding=utf-8重新运行发现是可以的。

最后我把配置文件中的中文注释全部删掉,同时不加上-Dfile.encoding=utf-8发现还是可以正常运行的。

但是nacos里面不可能不加中文注释,所以还是卡住了怎么解决编码问题。哪位大神可以提供一些解决思路?

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值