我已经创建了一个注释来在spring启动项目中调用Spring AOP Aspect。一切正常,直到我尝试将依赖关系自动装配到Aspect:自动装配不会发生。
我已经在stackoverflow中读过各种问题,这是因为Aspect不是Spring管理的。如果以前已经回答过,请道歉,但我已尝试过stackoverflow中提到的各种解决方案,包括使用@Configurable和实现ApplicationContextAware。
要使其发挥作用,最简单的变化是什么?
我创建了一个简单的例子来说明问题:如果直接创建了依赖项,则测试通过:
CreateObject("WScript.Shell")
如何调试方面?
由于
答案 0 :(得分:0)
在使用Aspects.aspectOf
的配置类中添加了一个bean@SpringBootApplication
@Configuration
public static class TestConfiguration {
/**
* This is needed to get hold of the instance of the aspect which is created outside of the spring container,
* and make it available for autowiring.
*/
@Bean
LogDurationAspect logDurationAspect()
{
final LogDurationAspect aspect = Aspects.aspectOf(LogDurationAspect.class);
return aspect;
}
}