首页 > 解决方案 > 应用程序无法使用 @Async 注释启动

问题描述

我正在尝试在后台异步运行一个函数。为此,我正在尝试 Spring 的 @Async 注释,但在将此注释放在函数上后,我的应用程序无法启动。

我试过了

@EnableAsync(proxyTargetClass = true)

但仍然没有运气。

以下是我在应用程序启动时收到的消息。


应用程序无法启动


描述:

无法将 bean 'MyBatchSyncProcessor' 作为 'com.abcservice.MyBatchSyncProcessor' 注入,因为它是一个 JDK 动态代理,它实现了:com.abcservice.BaseSyncProcessor

行动:

考虑将 bean 作为其接口之一注入或通过在 @EnableAsync 和/或 @EnableCaching 上设置 proxyTargetClass=true 来强制使用基于 CGLib 的代理。

请帮助我启动并运行此应用程序。

标签: javaspringspring-bootasynchronous

解决方案


不要注入您的服务实现 ( MyBatchSyncProcessor) - 注入它的接口BaseSyncProcessor


推荐阅读