【问题标题】:Spring MVC application.properties not override by profile file application-dev.propertiesSpring MVC application.properties 不会被配置文件 application-dev.properties 覆盖
【发布时间】:2015-11-11 10:56:42
【问题描述】:

我正在寻找一种根据 JVM 环境变量配置不同 application.properties 文件的方法。

我在 Spring 参考资料中找到了这个文档。

除了 application.properties 文件之外,还可以使用命名约定 application-{profile}.properties 定义特定于配置文件的属性。

配置文件特定属性从与标准 application.properties 相同的位置加载,无论配置文件特定文件是在打包的 jar 内部还是外部,特定配置文件始终覆盖默认文件。

然后我就这样做了:

Configuration structure

然后在我的 JVM 选项中添加了 -Dspring.profiles.active=dev

Profile option for JVM

我试图查看我在 dev 中的参数已被使用,但事实并非如此。应用程序从application.properties 文件加载数据。

知道为什么吗?

【问题讨论】:

  • 解决了吗?我面临着完全相同的问题。
  • 不,我改变了策略,但无法弄清楚。对不起兄弟。

标签: spring-mvc properties overriding profile


【解决方案1】:

尝试将默认属性文件的名称修改为“application-default.properties”,如文档中所述:

环境有一组默认配置文件(默认为 [default]),如果没有设置活动配置文件(即,如果没有显式激活配置文件,则加载 application-default.properties 中的属性)时使用这些配置文件。

https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html#boot-features-external-config-profile-specific-properties

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-11-04
    • 2020-11-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-25
    相关资源
    最近更新 更多