You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Boot 2.7迁移至3.x报错:Cannot resolve symbol DefaultBatchConfigurer

Spring Boot 3.x迁移:解决「Cannot resolve symbol DefaultBatchConfigurer」错误

问题根源

Spring Boot 3.x配套的Spring Batch 5.x版本,对DefaultBatchConfigurer类的包路径做了调整:原包org.springframework.batch.core.configuration.annotation改为org.springframework.batch.core.configuration.support,同时你代码中的@override注解存在大小写错误,这也是导致问题的次要原因。

修复方案

  1. 修正导入路径
    将类的import语句替换为正确的包路径:

    import org.springframework.batch.core.configuration.support.DefaultBatchConfigurer;
    
  2. 修正方法重写注解与代码
    确保@Override注解首字母大写,方法签名与父类完全匹配,修正后的完整代码示例:

    import org.springframework.batch.core.configuration.support.DefaultBatchConfigurer;
    import javax.sql.DataSource;
    
    public class BatchConfiguration extends DefaultBatchConfigurer {
    
        @Override
        public void setDataSource(DataSource dataSource) {
            // 此处保留你的原有逻辑,比如不调用父类方法以避免初始化数据源触发SQL异常
        }
    }
    
  3. 可选优化(按需使用)
    若你的核心需求是避免Job创建时触发SQL异常,除了重写setDataSource,还可以通过配置文件添加以下配置,禁用Spring Batch的自动Schema初始化:

    spring.batch.jdbc.initialize-schema=never
    

内容的提问来源于stack exchange,提问作者user2949241

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 14:25:11