error at ::0 can't find referenced pointcut xxx

 由于公司使用的框架版本比较久,需要将现有的框架进行升级。项目使用最新版本的struts/spring/hibernate,并使用最新版本的jdk 1.7和最新的tomcat 7。

      在项目的classpath中加入spring的最新版本3.2相关的jar包,并且安装好jdk 1.7,配置好相关的环境变量。配置好tomcat 7相关参数(比如tomcat的目录路径,jdk等),发布并运行项目,结果出现了异常,这个异常最后的一句是这样的:

                         error at ::0 can't find referenced pointcut xxx

     在网上查了很久的资料,才发现是由于jdk版本过高,导致以前项目中的一些jar包不能使用,具体的jar包是aspectjrt.jar和aspectjweaver.jar。AspectJ是一个面向切面的框架,AspectJ定义了AOP语法,它有一个专门的编译器用来生成遵守Java字节编码规范的Class文件。

 

解决办法:

    1. 将jdk版本由1.7换成1.6,但是由于组内的需求,此方案不合适

    2. 将两个jar包换成最新的包

        在http://www.eclipse.org/aspectj/downloads.php  中下载最新版本aspectj-1.7.2.jar,并将此jar包用zip解压就可以得到最新版的aspectjrt.jar和aspectjweaver.jar,最后将这两个包与项目中的久版本的包进行替换,将新版的jar包加入classpath中。

转载:http://www.xuebuyuan.com/625368.html

posted @ 2014-12-10 11:52  wxqi528  阅读(326)  评论(0编辑  收藏  举报