2

当我在我的应用程序中使用维护J 进行逆向工程时,我收到以下错误。请协助我们修复

---- AspectJ 属性 --- AspectJ 编译器 1.6.11 于格林威治标准时间 2011 年 3 月 15 日星期二 15:31:04 构建 ---- 转储属性 --- 转储文件:ajcore.20120507.210546.187.txt 转储原因: java.lang.NullPointerException 异常转储:true 退出条件转储:abort ---- 异常信息 --- java.lang.NullPointerException at org.aspectj.weaver.bcel.LazyMethodGen.remap(LazyMethodGen.java:1415) at org.aspectj.weaver.bcel.LazyMethodGen.addExceptionHandlers(LazyMethodGen.java:1269) 谢谢。

4

1 回答 1

0

您遇到的错误类似于MaintainJ 博客中描述的错误。

基本上,您需要从范围中排除导致类的麻烦。典型的 CGLIB 异常如下:

SEVERE: xxx/yyy/zzz/SampleClassABC$$FastClassByCGLIB$$2eb78e34
java.lang.NullPointerException
    at org.aspectj.weaver.bcel.LazyMethodGen.remap(LazyMethodGen.java:1415)
    at org.aspectj.weaver.bcel.LazyMethodGen.addExceptionHandlers(LazyMethodGen.java:1269)

您可以在 aop.xml 文件中排除此类,如下所示:

<exclude within="xxx.yyy.zzz.SampleClassABC*ByCGLIB*"/>

以类似的方式排除所有导致类的问题并重新启动服务器。我们基本上从 AspectJ 工具中排除了 CGLIB 生成的代理类。

于 2012-05-14T15:35:09.087 回答