Konfigurieren von load-time-weaving mit AspectJ und Tomcat?

Ich versuchte, konfigurieren von load-time-weaving (für tun profiling mit Perf4J) in der folgenden Weise:

1) ich habe aop.xml zu META-INF Ordner. Wenn Sie eingesetzt werden, META-INF in der Artefakt-root-Verzeichnis (d.h. MyAppDeployed/META-INF).

2) ich habe aspectjrt-1.6.1.jar, aspectjweaver-1.6.1.jar, commons-jexl-1.1.jar, commons-logging.jar zu den Tomcat/lib Ordner (auf den ersten ich habe versucht MyAppDeployed/WEB-INF/libs aber auch nicht funktioniert hat).

3) ich habe -javaagent:C:\apache-tomcat-6.0.33\lib\aspectjweaver-1.6.1.jar an-VM-Optionen beim starten von Tomcat.

4) Meine aop.xml:

<!DOCTYPE aspectj PUBLIC "-//AspectJ//DTD//EN" "http://www.eclipse.org/aspectj/dtd/aspectj.dtd">

<aspectj>

    <aspects>
        <aspect name="org.perf4j.log4j.aop.TimingAspect"/>
    </aspects>

    <weaver options="-verbose -showWeaveInfo">           
        <include within="com.mypackages.MyClass"/>
    </weaver>
</aspectj>

Ich sehe keine Anzeichen dafür, dass load-time weaving geschieht. Weder Fehlermeldungen noch notwendigen Ergebnisse. Die einzige Fehlermeldung die ich habe ist:

Error occurred during initialization of VM
agent library failed to init: instrument
Error opening zip file: C:\apache-tomcat-6.0.33\lib\wrong-jar.jar

in einem Fall, wenn ich einen Fehler in einem aspectjweaver-1.6.1.jar Namen wenn geben Sie eine parameter-javaagent. Wenn es richtig geschrieben - kein Fehler-Meldungen ausgegeben werden.

Irgendwelche Ideen, was mache ich falsch?

P. S. ich verwende Java 5, und ich habe versucht, die gleichen Dinge mit 1.5.4 version von aspectj mit genau dem gleichen Ergebnis.

  • Haben Sie jemals herauszufinden, dieses Problem? Ich bin versucht zu konfigurieren Aspectj + tomcat mit load-time weaving in Eclipse. Speziell ich bin versucht zu Weben, JSP ' s aber ich habe kein Glück.
  • Ich habe eine ähnliche situation, aber es funktioniert, wenn sich die Anmerkung auf meine Umsetzung Klasse.Ist Ihr com.mypackages.MyClass eine Schnittstelle oder Umsetzung? Meine Aspekte waren nicht immer gesponnen, wenn ich die Anmerkung auf der Oberfläche. Auch eine weitere Sache, ich habe den aop.xml Datei unter ../webapps/MyAppDeployed/WEB-INF/classes/META-INF/aop.xml nicht sicher, ob das einen Unterschied macht.
InformationsquelleAutor Roman | 2012-04-05
Schreibe einen Kommentar