AspectJ LoadTimeWeaving を使用してアスペクトを織り込む際に問題があります
ここに側面があります:
package com.thomson.tgr.aspects;
import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Around;
import org.aspectj.lang.annotation.Pointcut;
import org.springframework.util.StopWatch;
@Aspect
public class PerformanceAspect {
@Around("methodsToBeProfiled()")
public Object profile(ProceedingJoinPoint pjp) throws Throwable {
StopWatch sw = new StopWatch(getClass().getSimpleName());
try {
sw.start(pjp.getSignature().getName());
return pjp.proceed();
} finally {
sw.stop();
System.out.println("asdfasdf" + sw.prettyPrint());
}
}
@Pointcut("execution(* *.*(..))")
public void methodsToBeProfiled(){}
}
ここにaop.xmlがあります
<!DOCTYPE aspectj PUBLIC
"-//AspectJ//DTD//EN" "http://www.eclipse.org/aspectj/dtd/aspectj.dtd">
<weaver options="-verbose -debug -showWeaveInfo">
<include within="com..*"/>
</weaver>
<aspects>
<!-- weave in just this aspect -->
<aspect name="com.xxx.tgr.aspects.PerformanceAspect"/>
</aspects>
私は追加しました
<context:load-time-weaver />
私の豆の定義に。
そして私は追加しました
-javaagent:"C:/Users/UC193514/Desktop/aspectjweaver-1.7.0.jar"
-javaagent:"C:/Users/UC193514/Desktop/spring-instrument-3.2.7.RELEASE.jar"
JVM 引数へ。
ログで織りに関連して私が見ることができるのは次のとおりです。
[WebappClassLoader@1ce4a8a] warning javax.* types are not being woven because the weaver option '-Xset:weaveJavaxPackages=true' has not been specified
クラスは織り込まれていません。
私は何かを逃しましたか??