首页 > 解决方案 > 如何同时使用两个单独的 Spring yaml 配置文件?

问题描述

我有 application.yml,还有第二个文件。它可以命名为任何名称,但我需要从它们两个中加载。它们不会有重叠,所以覆盖不是问题。不幸的是,我不能使用配置文件来分隔数据并且需要两个文件。

对于文件结构,我有:

src
 main
  resources
   application.yml
   layer2
    secondFile.yml

我努力了:

  1. 将 spring.config.additional-location 添加到我的 application.yml。这似乎永远不会加载第二个文件。我都尝试过classpathand file,但我可能做错了。
  2. 在 Application.java 中,将 main 更改为 use System.setProperty("spring.config.location", "{file and classpath attempts}"),并创建一组新属性并将它们传递给 SpringApplication ,然后再运行它。

有什么我想念的吗?我可能会错误地格式化类路径或文件选择,但我不确定如何进行测试。

对于第一种尝试方式,application.yml 只是:

spring:
  config:
    additional-location: "optional:classpath:/layer2/secondFile.yml"

标签: javaspring

解决方案


推荐阅读