@Async不适用于task:executor


问题内容

我正在尝试使用异步调用Spring支持的bean中的方法@Async。我用XML定义了执行程序:

<task:executor id="emailTasksExecutor" pool-size="1" />

这是我的方法:

@Override
@Async("emailTasksExecutor")
public void sendEmail()
{
    ...
}

使用限定符(emailTasksExecutor)时根本不会调用该方法。但是,如果删除它,一切正常。但是在这种情况下,将使用默认执行程序,并且我需要更改此行为。

我认为问题是我的班级没有实现任何接口,并且代理出现了问题。但是提取接口没有帮助。


问题答案:

因此,问题出在我的身上maven-aspectj- plugin。我在这里找到了解决方案。我需要做的就是添加mode="aspectj"到中task:annotation- driven