问题描述
springboot整合nacos,注册成功但读取不到配置,版本如下:
spring-boot:2.4.6
spring-cloud.version:2020.0.3
spring-cloud-alibaba.version:2021.1
代码片段
pom.xml
<!-- 继承:Spring Boot Parent -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.4.6</version>
</parent>
<!-- 配置属性声明, 支持自定义参数 -->
<properties>
<spring-cloud.version>2020.0.3</spring-cloud.version>
<spring-cloud-alibaba.version>2021.1</spring-cloud-alibaba.version>
</properties>
<!-- 依赖包管理, 按需添加 -->
<dependencyManagement>
<dependencies>
<!-- spring-cloud-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>${spring-cloud.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<!-- spring-cloud-alibaba -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>${spring-cloud-alibaba.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-bootstrap</artifactId>
<version>3.0.3</version>
</dependency>
</dependencies>
</dependencyManagement>
<!-- Nacos注册中心 -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
<!-- Nacos配置中心 -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
<!-- 因版本比较新,最新包去掉了该包,需要手动引入,这里踩坑了 -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-bootstrap</artifactId>
</dependency>
boostrap.yml,注意不能是application.yml,nacos相关配置要放这里,boostrap.yml加载顺序优先application.yml,这里踩坑了
spring:
profiles:
active: dev
cloud:
nacos:
config:
# Nacos 认证用户
username: nacos
# Nacos 认证密码
password: nacos
# 命名空间 常用场景之一是不同环境的配置的区分隔离,例如开发测试环境和生产环境的资源(如配置、服务)隔离等
namespace:
# 配置中心地址
server-addr: 127.0.0.1:8848
# 配置对应的分组
group: DEFAULT_GROUP
# 配置文件后缀
file-extension: yaml
# 配置文件前缀
prefix: pay
# 支持多个共享 Data Id 的配置,优先级小于extension-configs,自定义 Data Id 配置 属性是个集合,内部由 Config POJO 组成。Config 有 3 个属性,分别是 dataId, group 以及 refresh
#shared-configs[0]:
#data-id: @prefix.name@-common.yaml # 配置文件名-Data Id
#group: @config.group@ # 默认为DEFAULT_GROUP
#refresh: false # 是否动态刷新,默认为false
discovery:
namespace:
server-addr: 127.0.0.1:8848
watch:
enabled: true
参考资料
https://www.jianshu.com/p/491db5791bf7?ivk_sa=1024320u
版权声明:本文为qq_34623714原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。