开发者

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

开发者 https://www.devze.com 2022-12-29 10:21 出处:网络 作者: 很懒的十六
目录bootstrap.yml读取nacos配置中心配置文件依赖的版本交由父模块进行版本控制了(另附上依赖代码)父模块的js依赖管理总结bYAxpeootstrap.yml读取nacos配置中心配置文件
目录
  • bootstrap.yml读取nacos配置中心配置文件
  • 依赖的版本交由父模块进行版本控制了(另附上依赖代码)
  • 父模块的js依赖管理
  • 总结

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

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

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

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

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

项目启动时的控制台输出

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

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

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

后面找到了PropertySourceBootstrapConfiguration

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

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

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

如果在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也如此

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

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

bootstrap.yml如何读取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-cYAxpeonfig 的nacos-config -->
<dependency>
   <groupId>org.springframework.cloud</groupId>
   <artifactId>spring-cloud-starter-alibphpaba-nacos-config</artifactId>
</dependency>

父模块的依赖管理

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

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

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

总结

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

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

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号