Java 如何解决以下AspectJ方面类NotFoundException?
Spring In Action一书有以下示例。它使用AspectJ的方面来说明构造函数切入点 例如:Java 如何解决以下AspectJ方面类NotFoundException?,java,spring,aspectj,Java,Spring,Aspectj,Spring In Action一书有以下示例。它使用AspectJ的方面来说明构造函数切入点 例如: package com.ct.springidol; public aspect JudgeAspect { public JudgeAspect() { } private CriticismEngine criticismEngine; //Constructor injection is supposed to happen public v
package com.ct.springidol;
public aspect JudgeAspect {
public JudgeAspect() {
}
private CriticismEngine criticismEngine;
//Constructor injection is supposed to happen
public void setCriticismEngine(CriticismEngine criticismEngine) {
this.criticismEngine = criticismEngine;
}
pointcut performance(): execution( * perform(..));
after() returning(): performance() {
System.out.println(criticismEngine.getCriticism());
}
}
package com.ct.springidol;
public class CriticismEngineImpl implements CriticismEngine {
//CriticismEngine - an interface - has only getCriticism() method.
public CriticismEngineImpl() {
}
private String[] criticismsPool;
//injected using xml file
public void setCriticismsPool(String[] criticismsPool) {
this.criticismsPool = criticismsPool;
}
public String getCriticism() {
int i = (int) (Math.random() * criticismsPool.length);
return criticismsPool[i];
}
}
相应的XML:
<bean id="criticismEngine"
class="com.ct.springidol.CriticismEngineImpl">
<property name="criticismsPool">
<list>
<value>I'm not being rude, but that was appalling.</value>
<value>You may be the least talented person in this show.</value>
<value>Do everyone a favor and keep your day job.</value>
</list>
</property>
</bean>
<bean class="com.ct.springidol.JudgeAspect" factory-method="aspectOf">
<property name="criticismEngine" ref="criticismEngine"/>
</bean>
JudgeAspect
的代码段中的包声明似乎缺失。你需要它来匹配你的切入点。你忘了把它贴在这里了吗?春天似乎找不到自己的豆子。这看起来像是类路径配置问题,而不是AspectJ或SpringAOP问题。我不是一个Spring用户,但在我看来这就是它的样子
这是你的第一个春季节目吗?你有没有试过让最小的Spring项目运行?我正在使用IntelliJ。为了编译方面,我必须配置IDE,即
判断方面
。为了使这个程序正常工作,它需要编译的方面。因此,必须在IDE的编译器设置中启用AspectJ编译器
,即ajc编译器
,而不是Java编译器。
有关完整的详细信息
http://www.jetbrains.com/idea/webhelp/using-the-aspectj-%28ajc%29-compiler.html
谢谢你回复我的请求。很抱歉,我们的回复延迟了。问题不在于类路径,而是必须配置IDE。无论如何,谢谢你。
http://www.jetbrains.com/idea/webhelp/using-the-aspectj-%28ajc%29-compiler.html