自带的tracing示例显示了AspectJ可以用来制作程序的探针,实现程序运行轨迹的收集。
打开cmd窗口,通过cd命令进入到doc\examples\tracing目录
这里的用到了四个类,TwoDShape.java,Circle.java,Square.java,ExampleMain.java,它们都被写在了tracev*.lst(*表示1,2,3)文件中,编译的时候就可以用一个命令将这些类都编译进一个jar文件中,命令为:
ajc -outjar tracev1.jar @tracev1.lst
version1版本的切面在version1文件夹下,所以运行带切面的程序的命令为:
java -classpath "d:\aspectj1.7.2\lib\aspectjrt.jar;tracev1.jar" tracing.version1.TraceMyClasses
程序输出如下:
version2~version3的编译类似
另外,tracing目录下还有个lib目录,这里的切面可以将程序结果写入文件中,编译的过程类似,但是要自己写一个.lst文件,将lib下两个文件包含进去,文件内容如下:
这样编译后tracing目录下就会出现一个名为“AJTRACETEST”的文件,打开后看到就是切面切入的结果。下面是编译version1版本编译输出的AJTRACETEST文件。