Java AspectJ-无法注册非方面错误
我正在尝试使用AspectJ和运行时编织。 我创建了一个方面Java AspectJ-无法注册非方面错误,java,aspectj,Java,Aspectj,我正在尝试使用AspectJ和运行时编织。 我创建了一个方面 @Aspect(value = "TraceAspect") public class TraceAspect { @Around("execution(* *(..))") public Object around(ProceedingJoinPoint invocation) throws Throwable{ System.out.println(String.format("Invocing %s"
@Aspect(value = "TraceAspect")
public class TraceAspect {
@Around("execution(* *(..))")
public Object around(ProceedingJoinPoint invocation) throws Throwable{
System.out.println(String.format("Invocing %s", invocation.getSignature().getName()));
try {
Object ret = invocation.proceed();
System.out.println(String.format("Done Invocing %s", invocation.getSignature().getName()));
return ret;
} catch (Throwable throwable) {
throw throwable;
}
}
}
我的aop.xml文件是
<aspectj>
<aspects>
<aspect name="TraceAscpect"></aspect>
</aspects>
<weaver options="-debug -showWeaveInfo"/>
我忘记补充什么了 看起来您在XML定义中把方面的名称拼错了,它应该是
tracespect
,并且您已经把traceacpect
放在XML文件中,正如Andy指出的那样,更正了XML文件中的键入错误。我也有同样的例外。后来我意识到我的方面不在类路径上。这为我解决了这个问题。确保tracespect
位于类路径上。这称为注释
java.lang.RuntimeException: Cannot register non aspect: TraceAscpect , TraceAscpect