问题发现

在我进行配置管理,设置好Nacos热更新的yaml文件后:

在获取配置的过程中遇到了该问题。

我的application.yaml如下:

server:
  port: 8081
spring:
  datasource:
    url: jdbc:mysql://localhost:3306/springcloud_study?useSSL=false
    username: root
    password: 123456
    driver-class-name:  com.mysql.cj.jdbc.Driver
#      discovery:
#        cluster-name: SH
mybatis:
  type-aliases-package: cn.itcast.user.pojo
  configuration:
    map-underscore-to-camel-case: true
logging:
  level:
    cn.itcast: debug
  pattern:
    dateformat: MM-dd HH:mm:ss:SSS
#eureka:
#  client:
#    service-url:
#      defaultZone: http://127.0.0.1:10086/eureka
#ribbon:
#  eager-load:
#    enable: true #开启饥饿加载
#    clients: #指定对userservice这个服务饥饿加载
#      - userservice

我的bootstrap如下:

spring:
  application:
    name: userservice
  profiles:
    active: public
  cloud:
    nacos:
      server-addr: localhost:8848
      config:
        file-extension: yaml # 文件后缀名
        namespace: public

问题解决

由于这个错误提示说明在创建名为userController的bean时,Spring无法解析${pattern.dateformat}这个占位符,也就是说,它在当前的环境配置中找不到pattern.dateformat这个属性。

所以我们需要去仔细比对我们的三个yaml文件是否对应,主要观察我们的bootstrap中的 active的值与我们在Nacos配置管理页面的是否为一直的结构。

更多推荐