如何重新组合javap生成的Java字节码?
作者:互联网
这个问题已经在这里有了答案: > Is there a java classfile / bytecode editor to edit instructions? [closed] 4个
我希望能够编辑字节码并重新编译成可执行的类文件.我不知道该怎么做.我尝试使用javap -c和-v进行反编译,进行编辑,然后将其更改回我的Class文件,但是出现错误“错误:找不到或加载主类Test.class”.我也想从字节码生成Java源代码.有什么帮助吗?我想自己做而不使用外部程序.我想自己做.
解决方法:
javap的输出不适用于汇编程序.如果要反汇编和重新组装Java字节码,则需要执行以下操作之一:
>使用具有第三方汇编器格式的第三方工具.
>编写自己的工具,以(反)汇编第三方汇编程序格式.
>编写使用自己的汇编器格式的工具.
我来看看Soot和Krakatau,它们都具有完整的(反汇编)功能. Soot支持字节码的少量中间表示.我相信Krakatau使用了基于流行的Jasmin的表示形式(尽管该工具本身是用Python编写的).
标签:java,decompiling,disassembly,bytecode 来源: https://codeday.me/bug/20191011/1893487.html