Archaius не читает обновленные значения из properties файла
config.properties
:
microservices.archaius.properties.one=one-value
Main
class:
@SpringBootApplication
public class Main {
public static void main(String[] args) {
SpringApplication.run(Main.class, args);
}
}
Controller
class:
@RestController
public class ConfigPropertiesController {
private static final String DEFAULT_NOT_FOUND_PROPERTY_MESSAGE = "not found!";
private DynamicStringProperty defaultProperty;
@PostConstruct
private void setUp() {
defaultProperty = DynamicPropertyFactory.getInstance()
.getStringProperty("microservices.archaius.properties.one",
DEFAULT_NOT_FOUND_PROPERTY_MESSAGE);
}
@GetMapping("/default")
public String defaultPropertyValue() {
return String.format("Property name: %s\nProperty value: %s", defaultProperty.getName(),
defaultProperty.get());
}
}
pom.xml
:
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-archaius</artifactId>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
<version>2.7.12-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-netflix</artifactId>
<version>2.0.1.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
Выполняю последовательность действий:
- Отправляю запрос
GET localhost:8080/default
и в ответ:
Property name: microservices.archaius.properties.one
Property value: one-value
- Меняю
config.properties
:
microservices.archaius.properties.one=UPDATED VALUE
- Опять отправляю запрос
GET localhost:8080/default
и в ответ получаю старые значения:
Property name: microservices.archaius.properties.one
Property value: one-value
Archaius не читает обновленные значения из config.properties
файла?
Источник: Stack Overflow на русском