druid minEvictableIdleTimeMillis和maxEvictableIdleTimeMillis绑定顺序问题

u59ebvdq  于 2022-11-02  发布在  Druid
关注(0)|答案(8)|浏览(272)

版本:
springboot:2.0.3
druid-spring-boot-starter:1.1.10

配置文件:application.yml
datasource:
druid:
max-evictable-idle-time-millis: 600000
min-evictable-idle-time-millis: 300000

配置类:

@Configuration
@MapperScan(basePackages = { "com.sjj.dao.*"})
public class MybitesConfig {

    /**
     * 配置数据库连接
     */
    @ConfigurationProperties(prefix = "spring.datasource.druid")
    @Bean(initMethod = "init")
    public DataSource dataSource() {
        return DruidDataSourceBuilder.create().build();
    }
}

现象:
看到了#1796说yml文件不会有问题,但确实会随机出现下面的错误,麻烦看一下,

Description:

Failed to bind properties under 'spring.datasource.druid' to javax.sql.DataSource:

Property: spring.datasource.druid.max-evictable-idle-time-millis
Value: 600000
Origin: class path resource [application.yml]:45:39
Reason: maxEvictableIdleTimeMillis must be grater than minEvictableIdleTimeMillis

Action:

Update your application's configuration

krcsximq

krcsximq1#

不会吧,单元测试没问题的。 如果确实会出现该问题的话你可以用 DruidDataSourceBuilder#build(Environment env, String prefix)

t3psigkw

t3psigkw2#

@lihengming springboot2.x,DruidDataSourceBuilder#build(Environment env, String prefix)不是要废弃了吗?

qkf9rpyu

qkf9rpyu3#

同问,不是说要废弃了吗?

jgzswidk

jgzswidk5#

这个bug确实没有解决到,偶发率很高,yml配置的也不行

pes8fvy9

pes8fvy96#

这个问题正在修复中,下个版本就没问题了

des4xlb0

des4xlb07#

新版本中已经修复了~

<dependency>
  <groupId>com.alibaba</groupId>
  <artifactId>druid-spring-boot-starter</artifactId>
  <version>1.1.14</version>
</dependency>
hkmswyz6

hkmswyz68#

新版本中已经修复了~

<dependency>
  <groupId>com.alibaba</groupId>
  <artifactId>druid-spring-boot-starter</artifactId>
  <version>1.1.14</version>
</dependency>

不是已经修复掉了吗. 为啥我在1.1.16还出这个错啊.

相关问题