我们有一个部署环境,它使用 to/uses-spring.config.location=app.properties
属性来提供配置位置。就像在这篇文章和这个github-br中提到的那样,我不知道对于我当前的 springboot 版本,即2.2.5.RELEASE
属性行为已经改变。正如预期的那样,我们必须使用spring.config.additional-location
它才能从 jar 中选择默认值。
然而,问题是对于同一环境中的另一个应用程序,它具有相同的 spring boot 版本,即 2.2.5.RELEASEspring.config.location
是旧的方式。所以我仍然想知道这是如何发生的,例如由于其他应用程序具有而我们的应用程序没有的其他依赖关系?
我不知道要给出什么代码示例,因为我不知道是什么代码导致行为恢复到旧版本。但是,我可以看到这两个应用程序的实现之间存在一些差异:
- 另一个应用程序使用 @Value 注释。我们的应用程序使用 @ConfigurationProperties 来加载属性值。我尝试使用它,但配置位置行为没有恢复。
- 在他们使用过的一些课程上
@PropertySource(value = "classpath:application.properties")
- 其他应用程序相对较旧,如果有任何不同,他们一直在升级 springboot 版本。
这些是我现在可以发现的一些差异。但是不确定是什么导致了这种行为变化,请帮忙。