Java spring.config.location-使用多个文件重载属性
我正在尝试配置我的Spring应用程序 我在Java spring.config.location-使用多个文件重载属性,java,spring,configuration,Java,Spring,Configuration,我正在尝试配置我的Spring应用程序 我在/src/main/resources中有我的文件application.yml。在我的主类中没有@PropertySource注释(但我也尝试过使用它) 我的Windows上还有另一个文件(/c/Programs/application.yml)具有类似的内容(某些值被覆盖) 我必须使用以下cmd调用运行应用程序(我的组织不希望我使用另一个调用,因为它是CI/CD标准流程的一部分): 我的/src/main/resrces/application.y
/src/main/resources
中有我的文件application.yml
。在我的主类中没有@PropertySource
注释(但我也尝试过使用它)
我的Windows上还有另一个文件(/c/Programs/application.yml
)具有类似的内容(某些值被覆盖)
我必须使用以下cmd调用运行应用程序(我的组织不希望我使用另一个调用,因为它是CI/CD标准流程的一部分):
我的/src/main/resrces/application.yml
文件包含在构建应用程序后的.jar
中。使用上面的cmd运行应用程序使用资源中的键,而不是第二个文件中的键
我花了几个小时试图解决这个问题:
对于两个文件spring.config.location
,第二个文件覆盖第一个文件的值
文件应以逗号分隔
当我指定单个文件(而不是目录)时,我不必使用spring.config.name
我的配置有什么问题?如何使用外部文件覆盖资源中的文件?请参阅@user7294900谢谢-我在那里找到了关于多个文件的信息,但我无法在我的项目中使用它。请尝试java-Dspring.config.location=classpath/application.yml,file:c/Programs/application.yml
它仍然使用classpath:/application.yml
,作为默认属性文件。使用spring.config.additional location=file:/c:/programs/
spring引导将自动从该位置加载application.yml
。
java -Dspring.config.location=classpath:/application.yml,/c/Programs/application.yml -jar app.jar