bootstrap.yml如何读取nacos配置中心的配置文件

目录
  • bootstrap.yml读取nacos配置中心配置文件
  • 依赖的版本交由父模块进行版本控制了(另附上依赖代码)
  • 父模块的依赖管理
  • 总结

bootstrap.yml读取nacos配置中心配置文件

最近搞nacos做为springboot的配置中心时,运行项目就一直报错,报错原因是没有加载到配置文件,可是nacos服务的地方又确确实实配置了配置文件,最后在启动的控制台中找到了一些线索,结合百度和源码查看找到了原因所在。

另外提一嘴,如果你导入了spring-cloud-starter-alibaba-nacos-config依赖(如果是父模块导入,子模块也受作用),就必须配置bootstrap.yml这样的配置文件,不配置的话,运行代码会有报错,但不影响代码正常使用,只是会有控制台输出错误

ps:因为我看到错误就难受,哪怕是警告

线索:(ps:因为不知道怎么截横向的长图只能这样了)

项目启动时的控制台输出

写着需要 spring.application.name.properties配置文件

后面找到了PropertySourceBootstrapConfiguration

应该是默认读取配置中心以properties为文件名后缀的配置文件,但是也可以更改,在bootstrap.yml配置文件中

如果在bootstrap.yml中添加了一行: spring.profiles.active=dev

spring:
  cloud:
    nacos:
      config:
        server-addr: localhost:8848
        file-extension: yaml
  application:
    name: service-daily
  profiles:
    active: dev

那么在nacos配置中心的配置文件需要更改名字为:service-daily-dev.yaml

又找到一段源码,所以在file-extension处配置yaml/yml都可,

但是如果file-extension处配置yml,那么nacos配置文件中心的文件也得是服务名.yml,yaml也如此

最后给出使用nacos时,需要一些依赖,如图:

依赖的版本交由父模块进行版本控制了(另附上依赖代码)

<!--spring-cloud nacos 服务注册-->

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
<!--服务调用-->
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
<!--代替 spring-cloud-config 的nacos-config -->
<dependency>
   <groupId>org.springframework.cloud</groupId>
   <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>

父模块的依赖管理

<dependency>
	<groupId>org.springframework.cloud</groupId>
	<artifactId>spring-cloud-alibaba-dependencies</artifactId>
	<version>${cloud-alibaba.version}</version>
	<type>pom</type>
	<scope>import</scope>
</dependency>

在resource目录下建一个bootstrap.yml配置文件,配置nacos的config信息,然后在nacos服务处新建一个配置文件,bootstrap.yml内容在上面已经给出了

总结

如有错误请指出,找的源码可能理解不太对。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • spring boot项目中如何使用nacos作为配置中心

    目录 使用nacos作为配置中心 1.pom.xml中引入nacos支持包 2.pom.xml中指向nacos 3.配置文件中使用nacos配置项 总结 使用nacos作为配置中心 利用nacos作为配置中心,好处不言而喻,配置外置了,与程序解耦,并且nacos还提供了友好的管理界面. spring boot的卖点之一,就是与之前的spring相比,所谓约定重于配置,配置文件大大简化. 现在使用nacos这种外置配置中心,是更加向前了一步. 具体应用步骤: 1.pom.xml中引入nacos支持

  • Nacos作为配置中心注册监听器方法

    目录 前言 项目文件说明 pom依赖 bootstrap.yml NacosConfig配置类 监听器实现类-默认实现 监听器实现类-json配置处理 注册监听器 监听器的效果 前言 本文主要讨论Nacos作为配置中心时,其中配置内容发生更改时,我们的应用程序能够做的事. 一般使用监听器来实现这步操作. 对应的监听器接口是:com.alibaba.nacos.api.config.listener.Listener 接下来看看如何注册一个监听器. 项目文件说明 以下操作都是在 SpringBoo

  • Springcloud-nacos实现配置和注册中心的方法

    最近,阿里开源的nacos比较火,可以和springcloud和dubbo共用,对dubbo升级到springcloud非常的方便.这里学习一下他的配置和注册中心.我主要记录一下它的使用方式和踩得坑. nacos简单介绍 Nacos 致力于帮助您发现.配置和管理微服务.Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现.服务配置.服务元数据及流量管理. Nacos 帮助您更敏捷和容易地构建.交付和管理微服务平台. Nacos 是构建以"服务"为中心的现代应用架构 (例如

  • Nacos配置中心的配置文件的匹配规则及说明

    目录 Nacos配置中心配置文件的匹配 1.配置微服务配置中心文件 2.常用细节 3.从一个配置中心加载多个配置集 Nacos配置中心配置不成功问题 1.扫描包 2.关于配置nacos 3.为何没有热加载? 4.配置好为何还是没有热加载? 5.另一个坑 6.如何打开项目中的nacos Nacos配置中心配置文件的匹配 详情见nacos的官方文档 1.配置微服务配置中心文件 在 Nacos Spring Cloud 中,数据集(Data Id) 的配置完整格式如下: ${prefix}-${spr

  • nacos配置中心远程调用读取不到配置文件的解决

    目录 nacos配置中心远程调用读取不到配置文件 下面引用官方文档的一段内容 读取不到nacos配置中心内容的坑 这是出错的配置 这是正确的配置 nacos配置中心远程调用读取不到配置文件 1.由于公司要求,对nacos做了命名空间的配置.(这个开始我步入了迷途....) 为了更好的区分配置文件,我们创建了两个命名空间,dev和test,在学习的时候,我们并未创建这些命名空间,所以一直正常使用,创建命名空间后我们无法读取到配置文件. 那么添加命名空间后需要在配置文件中支持命名空间,类似你创建了g

  • spring cloud如何集成nacos配置中心

    目录 spring cloud集成nacos配置中心 一.添加依赖 二.添加bootstrap.yml配置文件 三.添加远程配置 nacos作为SpringCloud配置中心 一.背景介绍 二.项目实战 三.总结 spring cloud集成nacos配置中心 一.添加依赖 <properties> <spring-cloud.version>Finchley.RELEASE</spring-cloud.version> <nacos.version>0.9

  • SpringCloud Nacos配置中心管理超详细讲解

    目录 一.Nacos配置管理 1.1 统一配置管理 1.1.1在nacos中添加配置文件 1.1.2 从微服务拉取配置 1.2 配置热更新 1.2.1 方式一 1.2.2 方式二 1.3 配置共享 一.Nacos配置管理 Nacos除了可以做注册中心,同样可以做配置管理来用 1.1 统一配置管理 当微服务部署越来越多,达到数十,数百时,逐个修改微服务配置就会很麻烦,且容易出错.我们需要一种统一配置管理方案,可以集中管理所有实例的配置. Nacos一方面更可以将配置集中管理另一方面在配置变更时,及

  • Nacos配置中心搭建及动态刷新配置及踩坑记录

    目录 一.Nacos配置中心介绍 二.配置中心搭建 1.配置中心启用 2.创建配置文件 3.工程配置 三.试验结果 四.踩坑经历 五.总结 近期有用到阿里的开源配置中心及注册中心nacos,特此记录并分享一些学习笔记及配置踩坑点. 一.Nacos配置中心介绍 从架构图上可以知道,Nacos提供了两种服务,一种是用于服务注册.发现的Naming Service,一种是用于配置中心.动态配置的Config Service,而他们底层均由core模块来支持. 外层提供OpenAPI供客户端使用,并提供

  • 详解Nacos配置中心的实现

    目录 基础配置 pom文件 YML文件 配置配置中心文件 Nacos中的匹配规则 Nacos作为配置中心-分类配置 Nacos的图形化管理界面 三种方案加载配置 DataID方案 Group方案 Namespace方案 基础配置 新建module:cloudalibaba-config-nacos-client3377 pom文件 版本号已经由父工程控制 <?xml version="1.0" encoding="UTF-8"?> <project

  • 阿里面试Nacos配置中心交互模型是push还是pull原理解析

    目录 引言 配置中心 长轮询 Nacos初识 几个概念 客户端源码分析 结束语 引言 对于Nacos大家应该都不太陌生,出身阿里名声在外,能做动态服务发现.配置管理,非常好用的一个工具.然而这样的技术用的人越多面试被问的概率也就越大,如果只停留在使用层面,那面试可能要吃大亏. 比如我们今天要讨论的话题,Nacos在做配置中心的时候,配置数据的交互模式是服务端推过来还是客户端主动拉的? 这里我先抛出答案:客户端主动拉的! 接下来咱们扒一扒Nacos的源码,来看看它具体是如何实现的? 配置中心 聊N

  • Nacos配置中心集群原理及源码分析

    目录 Nacos集群工作原理 配置变更同步入口 AsyncNotifyService AsyncTask 目标节点接收请求 NacosDelayTaskExecuteEngine ProcessRunnable processTasks DumpProcessor.process Nacos作为配置中心,必然需要保证服务节点的高可用性,那么Nacos是如何实现集群的呢? 下面这个图,表示Nacos集群的部署图. Nacos集群工作原理 Nacos作为配置中心的集群结构中,是一种无中心化节点的设计

  • Spring的@Value如何从Nacos配置中心获取值并自动刷新

    目录 @Value从Nacos配置中心获取值并自动刷新 Nacos属性值自动刷新 1.@NacosValue获取最新值 2.@Value获取最新值 @Value从Nacos配置中心获取值并自动刷新 在使用Nacos作为配置中心时,除了@NacosValue可以做到自动刷新外,nacos-spring-context:0.3.4版本是支持@Value获取Nacos配置中心的值,并动态刷新的,该功能是Spri依靠ngValueAnnotationBeanPostProcessor类来实现: @Ove

  • SpringBoot使用Nacos配置中心的实现

    本文介绍SpringBoot如何使用阿里巴巴Nacos做配置中心. 1.Nacos简介 Nacos是阿里巴巴集团开源的一个易于使用的平台,专为动态服务发现,配置和服务管理而设计.它可以帮助您轻松构建云本机应用程序和微服务平台. Nacos基本上支持现在所有类型的服务,例如,Dubbo / gRPC服务,Spring Cloud RESTFul服务或Kubernetes服务. 尤其是使用Eureka注册中心的,并且担心Eureka闭源的开发者们,可以将注册中心修改为Nacos,本文主要介绍Naco

随机推荐