Nacos版本更新后 ,配置中心的配置信息接收不到

场景

这几天闲着没事学习nacos,在bootstrap.yml中配置服务注册的地址信息,启动程序报错第一个错是:Param ‘serviceName‘ is illegal, serviceName is blank,这还没完,接着又出来一行报错信息Could not resolve placeholder 'config.info' in value "${config.info}",但是将配置信息放到application.yml中就不会报错,按道理来说,spring在加载配置信息的时候应该优先加载bootstrap.yml,这是怎么回事???往下看。

依赖版本

  • spring-boot-dependencies 2.5.7
  • spring-cloud-dependencies 2020.0.3
  • spring-cloud-alibaba-dependencies 2021.1

分析

我们在瞄一眼我配置的bootstrap.yml,有问题吗?没有问题啊,spring.application.name都是有值的。

server:
  port: 3377
spring:
  application:
    name: nacos-config-client
  cloud:
    nacos:
      config:
#        配置服务器地址。
        server-addr: 127.0.0.1:8848
#        nasos config dataId的后缀,也是配置内容的文件扩展名。
        file-extension: yaml
      discovery:
        server-addr: 127.0.0.1:8848
#        Nacos config group, group是配置数据元信息
#        group: DEFAULT_GROUP
#       命名空间,不同环境的分离配置
#        namespace: public

打个断点看到serviceName=" “,这是怎么回事,而这个serviceName又是什么呢?后来发现,这个serviceName 来自于配置文件,如果没有指定,默认使用${spring.application.name:} 如果spring.application.name 没有指定 就默认为”";
在这里插入图片描述
这也就说明bootstrap.yml没有被spring所加载,但是bootstrap可是优先加载的配置文件呀,我就看了一下官方文档,我给截取了下来。https://docs.spring.io/spring-cloud-config/docs/current/reference/html/#config-first-bootstrap

在这里插入图片描述
译文:要使用传统的引导方式连接到Config Server,必须通过一个属性或spring-cloud-starter-bootstrap启动器启用引导。这个属性是spring.cloud.bootstrap.enabled=true。它必须设置为系统属性或环境变量。一旦启动了引导,类路径上的任何带有Spring Cloud Config Client的应用程序都将连接到Config Server,如下所示:当一个配置客户端启动时,它绑定到Config Server(通过Spring . Cloud . Config .uri引导配置属性),并使用远程属性源初始化Spring Environment。

看官方文档说的噼哩哗啦一大片,简单点告诉我怎么做!

总结:2020.0.X版本之后spring不在默认加载bootstrap文件需要我们自己开启,而开启的方式就是加入spring-cloud-starter-bootstrap依赖。

        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-bootstrap</artifactId>
        </dependency>

打完收工。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

平平常常一般牛

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值