使用BCEL调用方法

时间:2011-05-10 07:55:06

标签: java methods bytecode bcel

这个社区中是否有专家与BCEL合作,可以指导我使用BCEL 调用方法,就像我们使用java反射一样。 < / p>

注意:为了支持您的答案,任何类型的书籍或网络参考都将成为一个很好的帮助来源。

现在我看到一个名为Visitor的界面,其中包含方法 visitInvokeInstruction() 现在有一种方法可以调用这些指令(在堆栈上形成一个方法)。

希望这段代码能给你们很多解释我想要的东西。

提前致谢

1 个答案:

答案 0 :(得分:1)

最好的方法是使用BCELifier,这是一个BCEL附带的类,它接受类文件并发出使用BCEL发出该类文件的源代码 - 实质上它将类文件反编译为字节码或原始Java源,但BCEL发射它所需的代码。

在您的情况下,只需编写一个包含您要生成的代码的简单虚拟类,然后运行BCELifier并检查结果。