spring boot项目启动报错:Failed to load property source from location 'classpath:/application.yml' 语法格式问题

控制台报错信息:

01:25:43.686 [main] ERROR org.springframework.boot.SpringApplication - Application run failed
java.lang.IllegalStateException: Failed to load property source from location 'classpath:/application.yml'
    at org.springframework.boot.context.config.ConfigFileApplicationListener$Loader.load(ConfigFileApplicationListener.java:549)
    at org.springframework.boot.context.config.ConfigFileApplicationListener$Loader.loadForFileExtension(ConfigFileApplicationListener.java:500)
    at org.springframework.boot.context.config.ConfigFileApplicationListener$Loader.load(ConfigFileApplicationListener.java:468)
    at org.springframework.boot.context.config.ConfigFileApplicationListener$Loader.lambda$null$6(ConfigFileApplicationListener.java:450)
    at java.lang.Iterable.forEach(Iterable.java:75)
   

可以看出提示application.yml有问题。

场景一:yml的语法格式有误

application.yml:

   spring:
      datasource:
        driver-class-name: com.mysql.jdbc.Driver
        username: root
        password: 123456
        url: jdbc:mysql://localhost:3306/test?characterEncoding=UTF-8
      datasource:
          type: com.alibaba.druid.pool.DruidDataSource

解决方法:修改后的application.yml:

   spring:
      datasource:
        driver-class-name: com.mysql.jdbc.Driver
        username: root
        password: 123456
        url: jdbc:mysql://localhost:3306/test?characterEncoding=UTF-8
        type: com.alibaba.druid.pool.DruidDataSource

ps:校验yml语法

注:注意缩进

控制台并无异常,成功运行。 

场景二:application.yml文件格式问题

application.yml 配置文件内容:

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8
    username: root
    password: 123456
  servlet:
    multipart:
      max-file-size: 5MB # 限制文件上传的大小

从配置文件中可以看出语法并无问题。

解决办法:

1、File-->Settings-->File Encodings

这三个地方设置成UTF-8格式。重启启动项目。

2、如第一步并未解决问题,则可以用第二步(终极杀招)。

  删除application.yml文件中所有中文注释。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值