使用Javassist在编译类之后立即在方法的开头静态添加一些代码。例如,
public String getFoo() {
// add some code here
return "foo";
}
从Eclipse调试,我看不到添加的代码。有没有办法让Eclipse显示解编译的代码而不是原始的源代码?
如何调试?
答案 0 :(得分:0)
一旦创建了CtClass,就可以调用CtClass.writeFile来保存生成的java类的字节码。然后您可以使用java反编译器来查看源代码。生成的源代码并不完美(它可能无法编译),但它可以让您很好地了解正在发生的事情。我使用IntelliJ(社区版)中内置的反编译器,但是一些谷歌搜索会找到其他一些选项。