查看动态生成的java类的内容

查看动态生成的java类的内容,java,eclipse,proxy-classes,Java,Eclipse,Proxy Classes,有没有一种方法可以让我们以某种方式查看动态生成的java类(如JDKProxy或CGLIB生成的代理)的内容?比如在eclipse debugger视图中,或者按需将其打印到日志文件中?在没有配置方面的情况下,它可以工作吗?我建议您再次查看文档,然后将其与您的方面实际执行的操作进行比较 编辑:这里有一个提示 @Aspect public class AstralMethodInterceptor { private static final Logger LOG = LoggerFac

有没有一种方法可以让我们以某种方式查看动态生成的java类(如JDKProxy或CGLIB生成的代理)的内容?比如在eclipse debugger视图中,或者按需将其打印到日志文件中?

在没有配置方面的情况下,它可以工作吗?我建议您再次查看文档,然后将其与您的方面实际执行的操作进行比较

编辑:这里有一个提示

@Aspect
public class AstralMethodInterceptor {

    private static final Logger LOG = LoggerFactory
            .getLogger(AstralMethodInterceptor.class);

    @Around("(execution(* com.kilo.proxyproxy.*.*(..)) || execution(* net.webservicex.*.*(..)) )")
    public void handleMethod(ProceedingJoinPoint pjp) throws Throwable {
        LOG.info("I encountered astral method in "
            + pjp.getThis().getClass().getCanonicalName());
        pjp.proceed();
    }
}

什么内容?为什么?我似乎在生成的代码中得到了一个NullPointerException,我想知道如何理解它。了解代码的内容可能有助于了解为什么会出现NPE?代理是动态的。它们基于反射实现一个接口(如果使用CBLib,有时是一个类)运行时。所以,如果你想要的是“生成的源代码”,那么就没有“生成的源代码”。在JDK代理中,您有一个“实现”代理的调用处理程序。我没有太多使用CBLIB,但它们可能有类似的概念。因此,如果您得到一个NPE,它很可能是由您现有代码中的某些内容引起的。向我们展示代码和错误可能更有帮助。我在$Proxy45.conversionRate(未知源)的线程“main”java.lang.NullPointerException中得到了一个异常,如
异常,这表明错误确实来自生成的代码,而不是我定义的任何拦截器,对吗?提前谢谢!如果您使用完整的堆栈跟踪和调用代理的代码更新您的问题,这将非常有用。