我用的是JDK11,发现ProxyGenerator不再是public了
有时候需要JDK
动态代理时生成的$Proxy0.class
文件,而在高版本的JDK中,不知为什么这个类不在是public
的,而是默认的class类型。一开始还有点懵,所以后来就把这个类拷贝到自己的包下了以及GetBooleanAction
类,之后根据IDE
的提示,把里面的方法加上@Override
,当然不加也行.
如下图所示,之后就可以调用自己这个包下的类来生成字节码文件了。比如:byte[] proxyClassBytes = ProxyGenerator.generateProxyClass("$Proxy0", new Class[]{Person.class});