大佬教程收集整理的这篇文章主要介绍了Spring 没有在 Config 子文件夹中查找,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我是 Springboot 的新手,在外部化我的属性文件时遇到了问题。 我将多个“.propertIEs”文件保存在子目录“config/”中。我已经从我的项目中删除了上下文占位符,并在执行 jar 时包含了逗号分隔的属性文件。
例如。 java -jar myjar.jar --spring.config.LOCATIOn=file:////config/PROP1.propertIEs,file:///config/PROP2.propertIEs -deBUG
我有几个问题
Spring boot 有明确的指示如何编写这个外部配置。请参阅此处的文档参考:https://docs.spring.io/spring-boot/docs/2.5.2/reference/htmlsingle/#features.external-config.files
基本上,您需要像这样指定位置:
从您的命令行来看,您似乎缺少一个破折号,并且还使用了错误的文件架构格式。
,问题 1:为什么即使明确提到要查找的位置,config 目录中的文件也没有被读取?
A1:如果你的 config 文件夹在你的 jar 文件旁边,你的命令应该像
java -jar myjar.jar --spring.config.LOCATIOn=file:./config/PROP1.properties
同时,您还可以使用完整路径来定位您的配置文件。
Q2:如果我没有明确提及属性文件名作为参数,那么即使它们在 config 目录中也不会被提取
A2:否。参见this doc,Spring Boot 会尝试从四个地方查找配置文件:
如果 spring.config.LOCATIOn
设置为 not
,这些文件夹中名为 application.properties
的文件将被视为有效的配置文件。您可以通过设置属性 spring.config.name
来更改接受的文件名。
Q3 关于配置文件优先级
A3如前面提到的 doc 中所述,如果相同的名称属性出现在不同的配置文件中,则列表中较高的位置会覆盖较低的项目。
另一个提示,最好将 jar 文件中的配置文件删除,这样您就可以在一个地方(外部化的配置文件夹)获得完整的配置视图;
以上是大佬教程为你收集整理的Spring 没有在 Config 子文件夹中查找全部内容,希望文章能够帮你解决Spring 没有在 Config 子文件夹中查找所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。