一、概述
最近在整理依赖,原本用的springcloud提供的nacos,看到老早都不更新了,而且有些包冲突,就换了ali的,用的spring-boot版本是2.3.9.RELEASE,对应spring-cloud版本是Hoxton.SR12,dubbo用的apache的2.7.11,nacos用的alibaba-cloud的2.2.6.RELEASE
二、问题
用yml配置的nacos-config,但是运行还是用的默认值
2023-11-30 17:06:34.027 WARN 36900 --- [ main] c.a.c.n.c.NacosPropertySourceBuilder : Ignore the empty nacos configuration and get it based on dataId[zl-system] & group[DEFAULT_GROUP]
三、原因
debug发现,配置均为null
一步步找,发现这个类是优先加载,并且通过反射创建的时候,参数就是个空,可是yml明明配置了,并且其他服务都能读取,觉得可能是这个类的加载在读取yml之前。于是查文档
https://github.com/alibaba/spring-cloud-alibaba/pull/2349
发现要用bootstrap。。。不想用,于是配置spring.config.import,发现该属性需要SpringBoot 2.4以上版本。。。
四、解决
spring-boot版本升级到2.4.12,对应spring-cloud版本是2020.0.4,后续再慢慢升级版本吧