Springboot中yml文件不生效原因
作者:mmseoamin日期:2024-01-19

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'ymlTestController': Injection of autowired dependencies failed; nested exception is java.lang.IllegalArgumentException: Could not resolve placeholder 'obj[1]' in value "${obj[1]}"

这个错误是由于在Spring框架中,无法解析占位符'str'导致的。请检查你的配置文件或代码,确保占位符'str'已经被正确定义和引用。

原因一:大家最容易发现的,就是yml文件内的str是否正确Springboot中yml文件不生效原因,第1张

原因二:yml配置文件没有生效,

我这个项目创成功的时候,Springboot中yml文件不生效原因,第2张 

 虽然他旁边有这个叶子,但是还是没有自动给我装配Springbooot这个组件Springboot中yml文件不生效原因,第3张这时候就需要我们自己装,  步骤:点击 File 选中 Project Structure Springboot中yml文件不生效原因,第4张

点击Facets->"+"号,添加Spring,点击okSpringboot中yml文件不生效原因,第5张之后就是这样:Springboot中yml文件不生效原因,第6张Springboot中yml文件不生效原因,第7张

原因三:如果你的yml文件旁边的图标不是叶子,就说明也是没有加载进去

Springboot中yml文件不生效原因,第8张 解决办法如下:Springboot中yml文件不生效原因,第9张Springboot中yml文件不生效原因,第10张点击图中的"+"号,将你的yml文件加入进去Springboot中yml文件不生效原因,第11张显示成下图这样,在Configuration Files里面有你所需的yml文件就行了Springboot中yml文件不生效原因,第12张

原因四:没有将yml配置文件编译进去

最恶心的一点,确定了你以上配置都是好好的,就是运行不起报 Could not resolve placeholder 'str' in value "${str}"这样的错,这就可能是编译错误,配置文件没有被编译过去,就需要你清理一下,将项目再重启一下,就像这样:打开旁边的Maven,点击Lifecycle,双击clean就可以了,Springboot中yml文件不生效原因,第13张控制台会给你弹出来这个BUILD SUCESSSpringboot中yml文件不生效原因,第14张之后再run就好了Springboot中yml文件不生效原因,第15张

这是我现在发现的一些问题,后面再有再更新