@RefreshScope не работает.Свойства не обновляются после второй модификации в Консуле - PullRequest
0 голосов
/ 03 января 2019

Я работаю с Консулом с помощью Spring-Cloud-Consul, и в настоящее время у меня есть эта проблема.Я создаю ключ в консуле как config / ConsulServer / my / username со значением как "bob".В моем контроллере я возвращаю это значение, если сделан вызов API "/ foo".Когда я изменил его в первый раз, чтобы «Стив» значение обновляется, и я получаю «Стив».Тем не менее, это не работает во второй раз.Значение по-прежнему "Стив".Может ли кто-нибудь помочь, пожалуйста, о том, что я сделал неправильно?Мои коды

@SpringBootApplication
@EnableDiscoveryClient
public class ConsulServer {
  public static void main(String[] args) {
    SpringApplication.run(ConsulServer.class, args);
  }
}

@Component
@RefreshScope
@ConfigurationProperties("my")
public class SampleProperties {
   private String username;
   public String getUsername() {
    return username;
   }
   public void setUsername(String username) {
    this.username= username;
   }
}

@RestController
public class ConsulController {
    @Autowired
    private SampleProperties consulConfig;

    @GetMapping("/foo")
    public String prop() {
       return this.consulConfig.getUsername();
    }
}

Мой bootstrap.yml

spring:
  application:
     name: ConsulServer
  cloud:
     consul:
     host: localhost
     port: 8500
     config:
        enabled: true
        fail-fast: true
        watch:
          enabled: true
     discovery:
        register: true

Мой application.yml

spring:
  application:
     name: ConsulServer

Я использую Spring-Cloud-Starter-Консул-все версии 2.1.0.RC3

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...