1

我正在动态生成新类(使用 Javassist),我希望能够获得此类生成的类的源代码。

是否有用于以编程方式反编译字节码的库?注意我要反编译的字节码不存在于文件系统中,只存在于内存中。

4

1 回答 1

3

如果要反编译(即获取原始源),请将 CtClass 保存到磁盘上的类文件中,然后使用JD-GUI等反编译器。

ClassFile cf = someCtClass.getClassFile();
FileOutputStream os = new FileOutputStream("C:/somefilename.class");
cf.write(os);
os.close();

不仅仅是C:/somefilename.class在反编译器中打开。

于 2011-11-02T00:11:58.603 回答