4

我正在尝试使用加载时间编织将 perf4j 绑定到程序中,但它似乎没有在我的类路径中找到 aop.xml。要么那个,要么它没有编织这个方面,因为它没有找到它。我已启用 aop.xml 的详细输出,但我没有看到任何编织消息、错误或其他内容。aspectJweaver 在哪里寻找 META-INF/aop.xml?我怎样才能知道它在寻找哪一个?

我试图使用直接路径来导入xml,但它没有奏效。-Dorg.aspectj.weaver.loadtime.configuration=C:\dev\trunk\bin\META-INF\aop.xml

注意:该程序使用 compile-time-weave 可以正常工作,但我更喜欢使用 load-time-weave。我还能够使用小型测试用例实现加载时间编织。

4

1 回答 1

6

META-INF 文件夹必须位于类路径的根目录中。并且 META-INF 文件夹必须包含文件 aop.xml。

对于独立程序,您必须使用编织 Java 代理启动 JVM。例如:

-javaagent:pathto/aspectjweaver.jar

带弹簧:

-javaagent:pathto/spring-agent.jar

您可以在 AspectJ 的开发环境指南中找到有关它的更多信息。

如果您使用 Web 容器,则必须配置容器以执行加载时编织。 SpringSource 的参考指南向您展示了如何使用 Tomcat 启用加载时编织。

于 2012-02-24T10:37:51.983 回答