我正在使用 AspectJ 并尝试在 @Component 注释上切入点。
@Pointcut("@annotation(org.springframework.stereotype.Component)")
public void bean() {
}
@Before("bean()")
public void beforeBeanCreation(JoinPoint jp) {
System.out.println("Works!");
}
我的配置如下所示:
@Configuration
@ComponentScan({"com.app.pl"})
@EnableAspectJAutoProxy(proxyTargetClass = true)
@EnableLoadTimeWeaving(aspectjWeaving = AspectJWeaving.ENABLED)
public class AppConfiguration{
}
当我想使用 ElementType.METHOD 或具有特定名称的 bean 切入注释时,一切正常。但是使用 ElementType.TYPE 注释的切入点不起作用。我推测这是一个与注释相关的问题,它们在 AspectJ 代理站起来之前就被读取了。
知道如何解决这个问题吗?
蝴蝶刀刀
相关分类