JVM : 如何在运行时获取类的字节码(或其他能表达运行时实际内容的)?

Himmelt
  • 139

已知 通过自定义 ClassLoader 配合 asm 可以在加载时修改字节码,那么 如何在运行时获取被修改之后的字节码(或其他能表达运行时实际内容的)?

根据需求,我需要知道原始类在运行时被改成啥样了。不知有没有什么办法或方向?

回复
阅读 1.6k
1 个回答

hook掉类加载函数,具体哪个函数我忘了,这个函数通常会接收至少两个参数,一个是字节码基址,一个是字节码长度。获取这两个参数之后直接dump出来就行。其实就是脱壳,你直接搜“脱壳”可能会有你想要的。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
你知道吗?

宣传栏