java – Spring-Batch代理类不能转换为Class?

前端之家收集整理的这篇文章主要介绍了java – Spring-Batch代理类不能转换为Class?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我有一个春季批量@Job定义.但是在运行它时(在tomcat中),由于com.sun.proxy,我得到了一个ClassCastException.$Proxy.

为什么会出现这种情况?以下摘录可能有什么问题?

@Service
public class JobService {
    @Autowired
    private JobLauncher launcher;

    public void run() {
        Job job = jobRegistry.getJob("jobname");
        launcher.run(job,params); //line 59
    }
}


@Configuration
@EnableBatchProcessing(modular = true)
public class JobConfig {
    @Bean
    @JobScope
    public MultiResourceItemReader

结果:

java.lang.ClassCastException: com.sun.proxy.$Proxy135 cannot be cast to org.springframework.batch.item.file.MultiResourceItemReader
    at org.springframework.batch.item.file.MultiResourceItemReader$$FastClassBySpringCGLIB$$ad846cb.invoke(
最佳答案
如果您不需要读者的具体类型,则返回ItemReader< T>来自reader()函数.
@JobScope默认使用CGLIB代理代理目标类.
原文链接:https://www.f2er.com/spring/431522.html

猜你在找的Spring相关文章