将项目代码打包发布到 K8s 时报错

error converting YAML to JSON: yaml: line 5: found character that cannot start any token

原因

是因为在 .yaml 配置文件中有通过 maven 占位符来获取配置信息,如下图
在这里插入图片描述
通过 maven 的 package 指令打包后可以 target 文件中发现编译后的 class 文件中并没有将占位符替换成对应的属性,所以报了这个错误。如下图
在这里插入图片描述

解决方法

在 pom.xml文件中添加maven编译时的过滤规则,如下图
在这里插入图片描述
我这里表示过滤 src/main/resources 路径下的全部文件,它将会把该路径下所有配置文件中的占位符替换成对应位置的属性,我们再打包一次看看。
在这里插入图片描述
可以看到,占位符被替换了。

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐