我试图配置负载时织入(做与的Perf4分析)在接下来的方式:如何使用AspectJ和Tomcat配置加载时织入?
1)I加入到aop.xml
夹META-INF
。部署时,META-INF被放置在工件根目录中(即MyAppDeployed/META-INF
)。
2)我把aspectjrt-1.6.1.jar
,aspectjweaver-1.6.1.jar
,commons-jexl-1.1.jar
,commons-logging.jar
到Tomcat/lib
文件夹(在开始我尝试MyAppDeployed/WEB-INF/libs
,但它也没有工作)。
3)我在启动Tomcat时将-javaagent:C:\apache-tomcat-6.0.33\lib\aspectjweaver-1.6.1.jar
添加到VM选项。
4)我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>
我没有看到任何迹象表明加载时织发生。无论是错误报告还是必要的结果。唯一的错误消息我是:
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
的情况下
当我在aspectjweaver-1.6.1.jar
名称的错误,当指定javaagent参数。如果写入正确 - 不会打印错误消息。
任何想法,我做错了什么?
P.S.我使用Java 5,并且我尝试了与aspectj的1.5.4
版本相同的结果,并得到完全相同的结果。
你有没有想过这个问题?我想在Eclipse中加载时间编织来配置Aspectj + tomcat。具体来说,我试图编织JSP的,但没有运气。 – bsimic 2012-08-10 16:50:48
我有类似的情况,但当注解在我的实现类上时它有效。是否将com.mypackages.MyClass作为接口或实现?当我在界面上添加注释时,我的方面不会被编织。还有一件事我有../webapps/MyAppDeployed/WEB-INF/classes/META-INF/aop.xml下的aop.xml文件不知道这是否有所作为。 – dineshr 2013-11-07 13:38:04