Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/358.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 应用程序无法以@Async批注启动_Java_Spring_Spring Boot_Asynchronous - Fatal编程技术网

Java 应用程序无法以@Async批注启动

Java 应用程序无法以@Async批注启动,java,spring,spring-boot,asynchronous,Java,Spring,Spring Boot,Asynchronous,我正在尝试在后台异步运行函数。为此,我正在尝试Spring的@Async注释,但在将此注释放到函数上后,我的应用程序无法启动 我试过了 @EnableAsync(proxyTargetClass=true) 但还是没有运气 下面是我在应用程序启动时收到的消息 应用程序无法启动 说明: 无法将bean“MyBatchSyncProcessor”作为“com.a.b.c.service.MyBatchSyncProcessor”注入,因为它是实现以下功能的JDK动态代理: com.a.b.c.s

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

我试过了

@EnableAsync(proxyTargetClass=true)

但还是没有运气

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


应用程序无法启动


说明:

无法将bean“MyBatchSyncProcessor”作为“com.a.b.c.service.MyBatchSyncProcessor”注入,因为它是实现以下功能的JDK动态代理: com.a.b.c.service.BaseSyncProcessor

行动:

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


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

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

您是否尝试
Autowire
注入
com.a.b.c.service.MyBatchSyncProcessor
在代码中的某个位置?请先添加代码!是的,我正试图通过构造函数进行自动连接。你应该注入接口而不是实现。我猜
com.a.b.c.service.BaseSyncProcessor
是一个接口。@San使用
@Async
方法创建类:)我认为添加String.java源代码或smth没有意义。像那样。