在我的项目中,我将一些方面用作项目的一部分,一些方面作为公共库的一部分。使用 Spring Boot 的默认编织概念,第一个请求大约需要10秒。因此,我们尝试使用 aspectj-maven-plugin 1.7 切换到CTW(编译时编织)。
现在已经减少了启动时间,这是切入点的一个方面
@Around("execution(public com.XXXX.XXXXX.common.XXXX.APIErrorResponse *(..))")
正在运行,但是带有切入点的方面
@Around("@annotation(com.xxxxxx.XXX.common.xxx.Loggable)"))
无效(我创建了一个@Loggable
注释来应用进入/退出日志记录)。我得到以下编译器消息:
[WARNING] advice defined in com.xx.xx.xx.xx.LoggerAspect has not been applied [Xlint:adviceDidNotMatch]
我在 pom.xml 中使用以下配置:
编辑的评论:关于pom.xml的缺失信息应该放在这里。
我使用 ajc 1.8.1和合规级别1.8。
我的Loggable注释:
@Retention(RetentionPolicy.CLASS)
@Target({ ElementType.METHOD, ElementType.TYPE })
public @interface Loggable {}
任何帮助将不胜感激。
答案 0 :(得分:0)
警告意味着完全合格的包装&切入点中的类名与注释中的实际名称不完全匹配。