今天研究 Spring AOP 时候,遇到一个问题,在 XML 配置时一切正常,在改为通过注解配置时候,出现了问题:
Initialization of bean failed;nested exception is java.lang.IllegalArgumentException:error at ::0 can't find referenced pointcut XXX 的错误。
经过后来排查发现,引入了错误的 jar 包。
首先声明,本人的环境是 JDK1.7.
本人引入的错误的 JAR 是 :
<dependency>
<groupId>aspectj</groupId>
<artifactId>aspectjrt</artifactId>
<version>1.5.4</version>
</dependency>
<dependency>
<groupId>aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>1.5.4</version>
</dependency>
应该正确引入的 JAR 是:
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>1.7.2</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjrt</artifactId>
<version>1.7.3</version>
</dependency>
</dependencies>
至此问题解决。