我有 aop 配置问题。这是我的 spring xml 配置的一部分:
<bean id="conLogger" class="com.pomkine.pXMPP.connection_service.ConnectionLogger"/>
<aop:config>
<aop:aspect ref="conLogger">
<aop:pointcut id="connect"
expression= "execution(* com.pomkine.pXMPP.connection_service.connectionManager.connect(..))" />
<aop:after pointcut-ref="connect"
method="connected"/>
</aop:aspect>
</aop:config>
这是我的主要方法:
public static void main (String [] args) {
ApplicationContext ac = new ClassPathXmlApplicationContext("com/pomkine/pXMPP/connection_service/connection-manager.xml");
connectionManager cm=(connectionManager)ac.getBean("connectionManager");
try {
cm.connect();
cm.disconnect();
} catch (XMPPException e) {
e.printStackTrace();
}
}
当我运行它时,我收到 NoClassDefFoundError 异常。
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'connect': Instantiation of bean failed; nested exception is java.lang.NoClassDefFoundError: org/aspectj/weaver/reflect/ReflectionWorld$ReflectionWorldException
无法弄清楚问题是什么。非常感谢任何帮助。
最佳答案
本题:Missing Spring AOP libraries in STS似乎解决了一个类似的问题(缺少库),也是这个 Spring Forum thread 中的一个问题.
您的类路径中是否有提到的 jar ?
<dependency>
<groupId>cglib</groupId>
<artifactId>cglib</artifactId>
<version>2.2</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>1.6.11</version>
</dependency>
关于java - Spring aop java.lang.NoClassDefFoundError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12432526/