怪!!

来源:互联网 发布:jpg看图软件 编辑:程序博客网 时间:2024/04/29 21:07
 今天开始研究AspectJ,不利用任何IDE,于是,下载好了jar包后,同时安装ok了,现在设置环境变量了

1.加上AspectJ_HOME

2.PATH里面加上${AspectJ_HOME}/BIN

3.CLASSPATH里面加上${AspectJ_HOME}/LIB

这样环境就OK了(自己以为Ok了,问题潜伏起来了)。

写了个测试类如下:

  1. public class Test {
  2.   public void helloWorld() {
  3.     System.out.println("Hello World");
  4.   }
  5.   public static void main(String args[]) {
  6.     Test test = new Test();
  7.     test.helloWorld();
  8.   }
  9. }

利用AspectJ的AOP类

  1. public aspect TestAspect {
  2.   pointcut outputLog() : call(public void helloWorld());
  3.   before() : outputLog() {
  4.     System.out.println("Before Call");
  5.   }
  6. }

类已经写好了,编译:

AJC Test.java TestAspect .java

java Test

运行结果:(以为没有任何问题了,呵呵)

晕了,报aspectjrt.jar没有找到。

于是乎改classpath的路径如加上${AspectJ_HOME}/LIB/aspectjrt.jar等等还是找不到,最后无奈之下还是使用老办法:

拷贝<aspectJ install dir>/lib/aspectjrt.jar文件到<java_home>/jre/lib/ext目录下。成功了,呵呵。

但是始终有疑惑:为什么classpath就是不起作用呢?怪哉,同仁们,遇到过没有啊?

 

原创粉丝点击