aspectj-maven-compiler插件:如何编织JRE系统。*?

时间:2011-10-02 07:34:39

标签: maven aspectj java

我正在尝试检测神秘的System.gc()来自何处, 所以我希望在所有对System.gc()

的调用中创建一个切入点

该文件描述了如何编织现有的罐子和现有的dirs,但是 我如何编织JDK本身?

非常感谢

1 个答案:

答案 0 :(得分:1)

您可以预先编织rt.jar并在JDK / JRE中替换它。请注意,加载时间编织不起作用,因为Javaagent无法访问引导类加载器。

然而,快速搜索显示整个JDK(Sun 1.6.0_26)中只有一个地方明确调用System.gc()

java.nio.Bits#reserveMemory

也许您可以简单地附加一个调试器并在gc()方法上放置一个断点?

话虽如此,你可以使用call()建议,而不是execution(),它将编织调用客户端代码而不是目标方法。所以你只需要编写代码和所有库而不是JDK。