springboot 启动项目找不到配置文

spring boot 新建一个module 无法加载配置

报错

在spring 配置文件中配置了一个 dev 环境


# Spring配置
spring:
  profiles:
    active: dev 
  # 资源信息
  messages:
    # 国际化资源文件路径
    basename: i18n/messages
  # 文件上传
  servlet:
     multipart:
       # 单个文件大小
       max-file-size:  10MB
       # 设置总上传的文件大小
       max-request-size:  20MB
  # 服务模块
  devtools:
    restart:
      # 热部署开关
      enabled: true
# 数据源配置
spring:
    datasource:
        type: com.alibaba.druid.pool.DruidDataSource
        driverClassName: com.mysql.cj.jdbc.Driver
        druid:
            master:
                url: jdbc:mysql://localhost:3306/wechat_timer?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
                username: root
                password: th.980224
            # 从库数据源
            slave:
                # 从数据源开关/默认关闭
                enabled: false
                url:
                username:
                password:
            # 初始连接数
            initialSize: 5
            # 最小连接池数量
            minIdle: 10
            # 最大连接池数量
            maxActive: 20
            # 配置获取连接等待超时的时间
            maxWait: 60000
            # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
            timeBetweenEvictionRunsMillis: 60000
            # 配置一个连接在池中最小生存的时间,单位是毫秒
            minEvictableIdleTimeMillis: 300000
            # 配置一个连接在池中最大生存的时间,单位是毫秒
            maxEvictableIdleTimeMillis: 900000
            # 配置检测连接是否有效
            validationQuery: SELECT 1 FROM DUAL
            testWhileIdle: true
            testOnBorrow: false
            testOnReturn: false
            webStatFilter:
                enabled: true
            statViewServlet:
                enabled: true
                # 设置白名单,不填则允许所有访问
                allow:
                url-pattern: /druid/*
                # 控制台管理用户名和密码
                login-username: sub
                login-password: 123456
            filter:
                stat:
                    enabled: true
                    # 慢SQL记录
                    log-slow-sql: true
                    slow-sql-millis: 1000
                    merge-sql: true
                wall:
                    config:
                        multi-statement-allow: true
    # redis 配置
    redis:
        # 地址
        host: localhost
        # 端口,默认为6379
        port: 6379
        # 数据库索引
        database: 0
        # 密码
        password:
        # 连接超时时间
        timeout: 10s
        lettuce:
            pool:
                # 连接池中的最小空闲连接
                min-idle: 0
                # 连接池中的最大空闲连接
                max-idle: 8
                # 连接池的最大数据库连接数
                max-active: 8
                # #连接池最大阻塞等待时间(使用负值表示没有限制)
                max-wait: -1ms

我看到这个报错,看来一下我的配置文件并没有什么问题,


***************************
APPLICATION FAILED TO START
***************************

Description:

Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured.

Reason: Failed to determine suitable jdbc url


Action:

Consider the following:
	If you want an embedded database (H2, HSQL or Derby), please put it on the classpath.
	If you have database settings to be loaded from a particular profile you may need to activate it (the profiles druid are currently active).

网上搜索都是说在spring boot 启动类上面加上 一下注解 DataSourceAutoConfiguration.class,因为自己已经配置了DataSuorec 所以不需要spring boot 自己去装配了。但是实际并没有解决,后来发现上述问题是我这个项目没有扫描到对应的配置文件。

@SpringBootApplication(exclude={DataSourceAutoConfiguration.class})
public class subWechatApplication {

    public static void main(String[] args)
    {
        // System.setProperty("spring.devtools.restart.enabled", "false");
        SpringApplication.run(subWechatApplication.class, args);
        System.out.println("(♥◠‿◠)ノ゙  wechat启动成功   ლ(´ڡ`ლ)゙  \n" +
                "@@@@@@   @@@  @@@  @@@  @@@  @@@@@@@   @@@  @@@@@@@   @@@@@@@ \n" +
                " @@@@@@@   @@@  @@@  @@@@ @@@  @@@@@@@@  @@@  @@@@@@@@  @@@@@@@@\n"+
                "  !@@       @@!  @@@  @@!@!@@@  @@!  @@@  @@!  @@!  @@@  @@!  @@@\n"+
                " !@!       !@!  @!@  !@!!@!@!  !@   @!@  !@!  !@!  @!@  !@!  @!@\n"+
                " !!@@!!    @!@  !@!  @!@ !!@!  @!@!@!@   !!@  @!@!!@!   @!@  !@!\n"+
                "   !!@!!!   !@!  !!!  !@!  !!!  !!!@!!!!  !!!  !!@!@!    !@!  !!!\n"+
                "  !:!  !!:  !!!  !!:  !!!  !!:  !!!  !!:  !!: :!!   !!:  !!!\n"+
                "  !:!   :!:  !:!  :!:  !:!  :!:  !:!  :!:  :!:  !:!  :!:  !:!\n"+
                "::: ::   ::::: ::   ::   ::   :: ::::   ::  ::   :::   :::: ::\n"+
                ": : :     : :  :   ::    :   :: : ::   :     :   : :  :: :  :  ");
    }
}

直接加上@ComponentScan(basePackages =“com.sub”) 就没问题了,是怎么知道没有扫配置文件的,我去debug 自己的DataSuorec class 发现没有进来,所以断定没有扫描到配置文件。 @ComponentScan 注解是扫描对应的包下面的类。

@SpringBootApplication(exclude={DataSourceAutoConfiguration.class})
@ComponentScan(basePackages ="com.sub")
public class subWechatApplication {

    public static void main(String[] args)
    {
        // System.setProperty("spring.devtools.restart.enabled", "false");
        SpringApplication.run(subWechatApplication.class, args);
        System.out.println("(♥◠‿◠)ノ゙  wechat启动成功   ლ(´ڡ`ლ)゙  \n" +
                "@@@@@@   @@@  @@@  @@@  @@@  @@@@@@@   @@@  @@@@@@@   @@@@@@@ \n" +
                " @@@@@@@   @@@  @@@  @@@@ @@@  @@@@@@@@  @@@  @@@@@@@@  @@@@@@@@\n"+
                "  !@@       @@!  @@@  @@!@!@@@  @@!  @@@  @@!  @@!  @@@  @@!  @@@\n"+
                " !@!       !@!  @!@  !@!!@!@!  !@   @!@  !@!  !@!  @!@  !@!  @!@\n"+
                " !!@@!!    @!@  !@!  @!@ !!@!  @!@!@!@   !!@  @!@!!@!   @!@  !@!\n"+
                "   !!@!!!   !@!  !!!  !@!  !!!  !!!@!!!!  !!!  !!@!@!    !@!  !!!\n"+
                "  !:!  !!:  !!!  !!:  !!!  !!:  !!!  !!:  !!: :!!   !!:  !!!\n"+
                "  !:!   :!:  !:!  :!:  !:!  :!:  !:!  :!:  :!:  !:!  :!:  !:!\n"+
                "::: ::   ::::: ::   ::   ::   :: ::::   ::  ::   :::   :::: ::\n"+
                ": : :     : :  :   ::    :   :: : ::   :     :   : :  :: :  :  ");
    }
}

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值