解决 ThreadPoolExecutor 抛出 java.lang.IllegalArgumentException

首先定位到 Caused by

第53行,追进去看,发现是 Config 配置类的 @Bean 方法中,new ThreadPoolExecutor 的时候出现了这个异常

异常的意思是:参数非法;追进 ThreadPoolExecutor 构造器源码看看什么情况下会抛出这个异常

如下所示,当核心线程数 > 最大线程数,或者其他几个 <= 0的条件时会抛这个异常

解决方法:在 Config 类 new ThreadPoolExecutor 前打一个 log 日志,看看现在使用的线程池参数是否符合要求,一般可能是最大线程数忘记改了

不过我这里不是,打日志后发现是 ConfigurationProperties 注入属性失败,这些属性全部为0

最终原因:Config 类没加 lombok 的@Data注解 ,导致无法注入,加上@Data:

启动成功

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值