弹簧启动执行器/刷新不会使用自由服务器刷新bootstrap.properties中定义的自定义属性

问题描述 投票:0回答:1

我有一个使用自由服务器运行的微服务。我有一组配置属性,不能直接使用@Value或@ConfigurationProperties或@Configuration使用。

属性结构:

我的application.yml为

DBUserName: ${username}
DBPassword: ${password}

和bootstrap.properties为

username: XXXX
password: XXXX

现在我已经实现了配置服务器,它正在从git repo读取属性文件。配置文件结构:

appname-dev.yml

Username: abcd
password: abcd

在客户端中,我将bootstrap.yml配置为

spring:
  profiles:
    active: dev
  application:
    name: appname
  cloud:
    bootstrap:
      enabled: true
    config:
      uri: http://localhost:8888

[每当我更新git repo中的属性时,配置服务器就会获取更新的属性,但是在击中执行器/刷新端点后,客户端的那些属性不会被更新。

当我在客户端点击执行器/ env时,它将显示配置服务器上的更新属性,但bootstrap.properties将具有与应用程序相同的旧属性。

所以,我在这里想念什么?配置服务器不适用于这种情况吗?

spring-boot microservices refresh websphere-liberty spring-boot-actuator
1个回答
0
投票

我认为这不起作用。单词application必须首先是profile。因此,application-bootstrap.yml是您真正想要的名称。不要忘记设置配置文件bootstrap

© www.soinside.com 2019 - 2024. All rights reserved.