取不到nacos配置的参数解决办法

本文介绍了如何在Spring Boot应用中正确配置PropertySourcesPlaceholderConfigurer,以实现忽略无法解析的占位符,确保Nacos配置的顺利加载。通过在启动类添加@Bean注解的方法,设置ignoreUnresolvablePlaceholders为true,可以避免因配置文件中的某些占位符未定义导致的启动错误。

在网上找了很久,在启动类加了一段代码就可以了

    @Bean
    public static PropertySourcesPlaceholderConfigurer placeholderConfigurer() {

        PropertySourcesPlaceholderConfigurer c = new PropertySourcesPlaceholderConfigurer();

        c.setIgnoreUnresolvablePlaceholders(true);

        return c;

    }

其中实体类以及读取参数是这样设置的:

NACOS:

 

### Spring Boot 接入 Nacos 配置中心常见问题及解决方案 当遇到 Spring Boot 项目无法读取 Nacos配置的情况时,可以考虑以下几个方面来排查并解决问题。 #### 版本兼容性检查 确保 `nacos-config-spring-boot-starter` 和 Nacos Server 的版本相匹配是非常重要的。不匹配可能导致连接或其他未知问题的发生[^1]。建议查看官方文档或 GitHub 上的相关说明以获支持的具体版本列表,并据此调整依赖项中的版本号。 #### 正确引入依赖库 对于希望利用 Nacos 作为配置管理工具而非仅限于服务发现的应用来说,应该采用特定的 starter 而不是通用的 spring cloud 组件。具体而言,在 pom.xml 文件里应加入如下依赖: ```xml <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>nacos-config-spring-boot-starter</artifactId> <!-- 确认此版本与使用的Nacos服务器版本一致 --> </dependency> ``` 而不是使用 org.springframework.cloud 命名空间下的任何包,因为后者可能不具备完整的 Nacos Config 功能支持[^2]。 #### 分组设置注意事项 如果计划通过参数 `spring.cloud.nacos.config.shared-dataids` 来实现多个微服务间共享某些全局性的配置文件,则需特别留意分组名称的选择。按照规定,此时应用所处的分组应当被设定为默认值 `"DEFAULT_GROUP"` ,即保证属性 `spring.cloud.nacos.config.group` 设置正确无误[^3]。 #### 示例代码片段展示如何配置 application.yml 或 properties 文件以便成功加载来自 Nacos 的外部化配置信息: ```yaml spring: application: name: example-service # 应用的名字用于区分不同的服务实例 cloud: nacos: discovery: server-addr: localhost:8848 # Nacos地址 config: server-addr: ${spring.cloud.nacos.discovery.server-addr} # 同样的Nacos地址也可以在这里指定 file-extension: yaml # 如果您的配置是以YAML格式存储的话就填写这个选项 group: DEFAULT_GROUP # 默认情况下应该是这样的;除非有特殊需求才更改它 shared-dataids: common.yaml # 这里定义要共享的数据ID们 ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值