我已经钻研了几个小时的文档,仍然不能理解在我正在开发的web应用程序中到底需要修改什么。在最初的2.4.x版本中,application.yml和application-local.yml没有任何与云配置相关的属性
所有云配置内容都在bootstrap.yml中,分为通用文档和环境文档:
spring:
application:
name: my_app
cloud:
config:
label: develop
uri: https://my.local.server
username: user
password: password
enabled: true
---
spring:
profiles: int
cloud:
config:
label: develop
uri: https://my.int.server
username: user
password: password
enabled: true
---
…在bootstrap.yml中将spring.profiles: int切换到spring.config.activate.on-profile: int非常简单,很容易弄清楚。我找不到的是,我还需要添加什么(以及添加到哪里)才能正确地从服务器读取配置。我尝试向application.yml添加spring.config.import: "optional:configserver:"的变体,虽然它们已经解决了该属性丢失的错误,但它们都不允许找到这些值。(我尝试了"configserver:","configserver:https://my.local.server",& "optional:configserver:https://my.local.server")
我确信我错过了一些非常明显的东西,但我不知道它可能是什么。
发布于 2021-11-19 00:54:30
您需要删除bootstrap.yml,并将每个属性放入application.yml中。如下所示:
(...)
spring:
application:
name: my_app
cloud:
config:
label: develop
uri: https://my.local.server
username: user
password: password
enabled: true
---
spring:
config:
activate:
on-profile: int
cloud:
config:
label: develop
uri: https://my.int.server
username: user
password: password
enabled: true
---
(...)另外,对于Spring Boot。2.4.6,请确保您具有以下依赖关系:
<dependencyManagement>
<dependencies>
<dependency>
<groupId>io.pivotal.spring.cloud</groupId>
<artifactId>spring-cloud-services-dependencies</artifactId>
<version>3.2.1.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>2020.0.3</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>https://stackoverflow.com/questions/70027757
复制相似问题