你的一个中
@Configuration必须实现
AsyncConfigurer指定特定
TaskExecutor的
@Async方法。
否则,将会使从中选择哪个混淆
applicationContext。
即使可以正常使用
RC3也没关系,因此该错误已针对进行了修复
GA。
更新
AsyncAnnotationBeanPostProcessor如下所示:
Executor executorToUse = this.executor;if (executorToUse == null) { try { // Search for TaskExecutor bean... not plain Executor since that would // match with ScheduledExecutorService as well, which is unusable for // our purposes here. TaskExecutor is more clearly designed for it. executorToUse = beanFactory.getBean(TaskExecutor.class); } catch (NoUniqueBeanDefinitionException ex) { try { executorToUse = beanFactory.getBean(DEFAULT_TASK_EXECUTOR_BEAN_NAME, TaskExecutor.class); } catch (NoSuchBeanDefinitionException ex2) { throw new IllegalStateException("More than one TaskExecutor bean exists within the context, " + "and none is named 'taskExecutor'. Mark one of them as primary or name it " + "'taskExecutor' (possibly as an alias); or specify the AsyncConfigurer interface " + "and implement getAsyncExecutor() accordingly.", ex); } } catch (NoSuchBeanDefinitionException ex) { logger.debug("Could not find default TaskExecutor bean", ex); // Giving up -> falling back to default executor within the advisor... }}
因此,我想在从RC3迁移到GA之前,您已经
taskExecutor对此事有所了解。
正如您在StackTrace上看到的那样,已经有一个这样的bean …
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)