我有一个具有以下属性的spring bootstrap.yml文件
spring.cloud:
config:
uri: http://${SERVICE_HOST}/${PROJECT_KEY}-config-server
enabled: true
failFast: true
我尝试使配置服务器客户端(由上述道具配置)可以与生产配置文件一起使用,但是在运行时,我的配置服务器客户端被禁用了:
ConfigClientProperties properties = applicationContext.getBean(ConfigClientProperties.class);
log.info("Profile is " + properties.getProfile());
log.info("Enabled is " + properties.isEnabled());
打印
Profile is production
Enabled is false
在测试个人资料中,一切正常。
如何在生产环境中启用配置服务器客户端?
答案 0 :(得分:2)
似乎您的yml格式不正确(spring.cloud)。来自本章下的official documentation
The Bootstrap Application Context
spring:
cloud:
config:
uri: ${SPRING_CONFIG_URI:http://localhost:8888}
尝试将spring.cloud
更改为上述示例,让我知道是否有帮助。
答案 1 :(得分:0)
我们用于部署应用程序的马拉松应用程序覆盖了它们。春天不会覆盖道具
答案 2 :(得分:-1)
默认情况下,maven或gradle使用默认配置文件(在正常情况下,默认配置文件为dev)。 我要使用其他配置文件构建的春季靴,可以使用:
对于Maven:
mvnw -Pprod spring-boot:run
OR
./mvnw -Pprod spring-boot:run
对于gradle:
gradlew -Pprod bootRun
OR
./gradlew -Pprod bootRun
,并且必须在项目中声明带有prod名称的配置文件(例如.yml文件)。