当使用spring cloud 2021版本及以上时,配置nacos注册中心无法像之前那样通过配置bootstrap.yaml的方式进行处理。此时,有两种方式可以完成spring cloud 与 nacos 之间的配置。
方案一:添加依赖
<!-- https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-starter-bootstrap -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-bootstrap</artifactId>
<version>3.1.5</version>
</dependency>
添加该依赖后,新版本的spring cloud即可按照旧版本的进行处理。
方案二:spring.config.import
新版本提供了新的配置项导入方式:spring.config.import,该方式能够支持各类的配置文件导入操作,修改原配置文件如下:
server:
port: {port}
spring:
application:
name: {app-name}
nacos:
discovery:
server-addr: {host}:{port}
config:
server-addr: {host}:{port}
group: {group}
config:
import:
- optional:nacos:{config-name-version}
注:大括号内的内容需自行填写。
此处的{config-name-version}直接与nacos中的配置文件进行匹配,而不依赖于应用名称和激活的环境。但在nacos.config中配置的group项还是会生效的。该名称不能够带上.yaml或者.properties后缀,nacos在配置该项文件时,对同名的yaml文件和properties文件仅支持同时存在一份,因此文件末尾的文件类型不需要进行标注。