Idea 查看字节码文件内容
最近刚好在学习字节码相关的知识,需要查看 java 字节码文件里面的内容,了解到通过 java 可以通过 javap 命令进行查看字节码文件内容
javap
javap -v classFile : 在控制台中打开一个 class 文件输入命令就可以查看到效果,例如:
每次都要找到 class 再输入命令并不方便,idea 提供了 External Tools 工具可以对命令进行封装
ExternalTools 设置 javap
ExternalTools 在 idea 设置的 Tools -> External Tools 中
配置参数如下:
如果你是 mac,java 安装默认的路径为: /Library/Java/JavaVirtualMachines/xx
在 java 的源文件中找到 bin 目录就可以看到 javap,例如:/Library/Java/JavaVirtualMachines/zulu-17.jdk/Contents/Home/bin/javap
- $FileClass$:代表文件文件对应的 class 文件
- $OutoutPath$:输出目录
这样在 .java 文件运行后右键的 ExternalTools 选项中就会有设置的 javap
这样就可以直接运行
设置快捷键
一直使用某个功能时肯定是快捷键比较舒服,可以在 idea 设置的 KeyMap 中设置快捷键
我在此设置了 Command + `
IDEA 插件
IDEA 的 View 自带了 ByteCode 插件可以查看字节码文件内容,但是少了常量池等信息
插件商店里也有个 Jclasslib 插件,效果如下:
个人感觉还是控制台的内容比较直观