如何得到动态代理$Proxy0.class文件!!!

        从网上搜了半天,全是一带而过的,没有一个真正说明怎么获得文件的!尝试了半天终于弄出来了。

做个记录吧,有同样困扰的朋友可以参考,这只是一种获取的方法,还有其他的,可以搜一搜。


开始正文

1,打开保存开关(这个网上很多)

    在调用动态代理的main方法中加上      

    System.getProperties().put("sun.misc.ProxyGenerator.saveGeneratedFiles", "true");

    System.getProperties().put("sun.misc.ProxyGenerator.saveGeneratedFiles", true);//这个不好使

2,在正确的路径上,手动创建文件

    可以通过   System.out.println("$Proxy0.class全名: "+Proxy.getProxyClass(Inter.class.getClassLoader(), Inter.class));    获得路径,也可以根据自己的包路径确定$Proxy0.class路径,然后自己手动创建路径。然后在路径下创建$Proxy0.class文件。

    例如:我的$Proxy0.class全名是com.test.$Proxy0

        那就要在项目根目录(根目录,不是bin,也不src里面)手动创建com/test/$Proxy0.class

        执行main,$Proxy0.class文件就有内容了。

结束。

============================

刚试了一下,新建项目或包,不手动创建也有$Proxy0.class了。。。。

你可能感兴趣的:(动态代理)