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

 更新时间:2022年12月28日 10:23:52   作者:很懒的十六  
这篇文章主要介绍了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内容在上面已经给出了

总结

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

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

相关文章

  • JDBC的ResultSet使用说明

    JDBC的ResultSet使用说明

    今天小编就为大家分享一篇JDBC的ResultSet使用说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-02-02
  • 详解Java弱引用(WeakReference)的理解与使用

    详解Java弱引用(WeakReference)的理解与使用

    这篇文章主要介绍了Java弱引用(WeakReference)的理解与使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • SprinBoot整合Quart实现定时调度的示例代码

    SprinBoot整合Quart实现定时调度的示例代码

    这篇文章主要介绍了SprinBoot整合Quart实现定时调度的示例代码,代码简单易懂,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-10-10
  • 在java中使用dom4j解析xml(示例代码)

    在java中使用dom4j解析xml(示例代码)

    鉴于目前的趋势,我们这里来讲讲Dom4j的基本用法,不涉及递归等复杂操作。Dom4j的用法很多,官网上的示例有那么点儿晦涩,这里就不写了
    2013-10-10
  • 关于Nacos和Eureka的区别及说明

    关于Nacos和Eureka的区别及说明

    这篇文章主要介绍了关于Nacos和Eureka的区别及说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • MyBatis 动态SQL使用及原理

    MyBatis 动态SQL使用及原理

    这篇文章主要为大家介绍了MyBatis动态SQL使用及原理的学习详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-05-05
  • SpringBoot项目使用jasypt加解密的方法

    SpringBoot项目使用jasypt加解密的方法

    jasypt是一个通用的加解密库,我们可以使用它在配置文件中对数据库密码进行加密,以确保其安全性,接下来通过本文给大家介绍SpringBoot项目使用jasypt加解密的方法,感兴趣的朋友一起看看吧
    2022-05-05
  • Eclipse中实现JS代码提示功能(图文教程)

    Eclipse中实现JS代码提示功能(图文教程)

    本文通过图文并茂的形式给大家介绍了Eclipse中实现JS代码提示功能,非常不错,具有参考借鉴价值,需要的朋友参考下吧
    2017-11-11
  • Spring Boot如何支持嵌入式Servlet容器

    Spring Boot如何支持嵌入式Servlet容器

    这篇文章主要介绍了Spring Boot如何支持嵌入式Servlet容器,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-10-10
  • 一文详解如何更改电脑使用的JDK版本

    一文详解如何更改电脑使用的JDK版本

    我们在日常学习或者工作中,难免会遇到需要使用不同的jdk版本进行开发,这篇文章主要给大家介绍了关于如何更改电脑使用的JDK版本的相关资料,需要的朋友可以参考下
    2024-01-01

最新评论