一、背景
很多人想学习Java反汇编后的字节码,但是一方面缺乏好的资料,另外一方面缺乏好的工具。
关于资料大家可以看 《Java虚拟机规范》、《深入理解Java虚拟机》,还可以购买 JVM字节码相关的专栏。
虽然大家可以使用 JDK 自带的 javap 命令行工具,但是总是有些不方便。
这里介绍下jclasslib bytecode viewer
这款神器。
二、安装使用
开源地址:
https://github.com/ingokegel/jclasslib
官方介绍:
jclasslib bytecode viewer is a tool that visualizes all aspects of compiled Java class files and the contained bytecode.
jclasslib bytecode viewer 是一个可以可视化已编译Java类文件和所包含的字节码的工具。 另外,它还提供一个库,可以让开发人员读写Java类文件和字节码。
安装
建议直接通过idea的插件库搜索安装然后重启即可,下面我已经安装过了。
点击 Install安装,安装后点击 Restart IDE 重启 IDEA
使用
- 编译项目
- 选择需要查看的类,进入该类中即可。
3 使用时直接选择 View --> Show Bytecode With jclasslib
jclasslib窗口
主要优点:
- 不需要使用javap指令,使用简单
- 点击字节码指令可以跳转到 java虚拟机规范对应的章节。
比如我们想了解 invokespecial 的含义,可以点击该指令
自动通过浏览器打开虚拟机规范并定位到该指令位置,非常方便。
四、总结
本文主要介绍了 IDEA 字节码查看插件:jclasslib bytecode viewer。讲到了该插件的安装和简单的使用,深入还得自己探索。