Refresh keys changed: []nacos更新内容获取不到?

在尝试使用Nacos的@Value和@RefreshScope进行配置动态刷新时遇到问题,发现配置未生效。文章指出,问题可能在于使用了application.yml而非bootstrap.yml。bootstrap.yml是用于在应用上下文启动前加载配置,确保配置变更能被即时检测。因此,即使refresh-enabled默认为true,在application.yml中也可能无效。解决方案是切换到bootstrap.yml,无需显式设置refresh-enabled=true。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天学习nacos
使用@Value+@RefreshScope实现动态刷新时发现失效了
网上查的方法全都无效
还是chatgpt靠谱
下面是chatgpt的答案
在这里插入图片描述
其中有一处错误refresh-enablled默认是true
但是我不写理论上还是开启了自动刷新的 为什么还是无效呢
重要的是下面一句话

请注意,这个属性需要在 bootstrap 环境下使用,而不是 application 环境下。这是因为 bootstrap 环境是在应用程序上下文之前加载的,它可以在应用程序启动时加载配置文件,并确保配置文件的更改可以被应用程序立即检测到

因为我的配置文件还是像springboot项目一样使用的application.yml 此时就算默认给你设置了refresh-enabled=true 也会因为上述原因失效
此时只要把文件改为bootstrap就可以了 不需要写refresh-enabled=true就行 反正默认是true
下面是我的示例代码
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

azoon.top

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

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

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

打赏作者

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

抵扣说明:

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

余额充值