版本说明
spring-cloud version :2021.0.5.0
spring-boot.version:2.6.13
1. 引入依赖
<!--Nacos config--><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId></dependency><!-- 解决禁用bootstrap配置问题 --><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-bootstrap</artifactId><version>3.1.0</version></dependency>
2. 启用配置中心
在项目的启动类上添加**@EnableDiscoveryClient**注解。
java">@SpringBootApplication
@EnableDiscoveryClient
public class TestApplication {public static void main(String[] args) {SpringApplication.run(TestApplication.class, args);}
}
3. 添加配置到bootstrap.yml
spring:application:name: test # 应用名称cloud:nacos:config:server-addr: 192.168.10.75:8848namespace: tool # Nacos命名空间,用于服务发现的隔离 默认public,可不配置file-extension: yml # 配置文件类型, 默认properties,如果是yaml格式,需要配置enabled: true # 是否启用 默认为truerefresh-enabled: true # 是否启用配置刷新 默认为true 可不配置name: application # Nacos中加载的配置文件名称,不配置时匹配应用名
4. Nacos中新增配置文件
注意:需要和上面的配置保持一致,不一致就导致配置失效。
5. 启用配置动态刷新
默认是重新项目时,Nacos中发布的配置才能生效。可以通过在需要实时更新配置的类上添加**@RefreshScope**注解,来使配置修改实时生效。
6. 可能遇到的问题
6.1 No spring.config.import set
问题原因:新版本SpringCloud默认将bootstrap支持移除了,需要手动添加bootstrap依赖,上面依赖已经引入了。需要注意一下版本,亲测4.0.3版本不可以,3.1.0可以。
<!-- 解决禁用bootstrap配置问题 --><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-bootstrap</artifactId><version>3.1.0</version></dependency>