背景
在学习《深入理解Java虚拟机》时,难免要对class文件进行研究.好在Oracle已经为我们提供了专门分析Class文件字节码的工具:javap,因此我们只需把该工具集成到我们的IDEA中即可.
准备工作
我们知道字节码的class文件是java文件通过javac编译而来,因此首先需要把javac整合到我们的IDEA中.具体步骤如下:
选择External Tools, 然后点击“+”进行添加.
找到JAVA_HOME,javac工具在Java_HOME/bin包下,如下图操作
接下来对Arguments和Working directory进行设置.我们知道:通过CLI(命令行界面)进行编译.java文件时的大概方式为:javac xxx/xxx/xxx.java.其中上图等同于javac部分,那么接下来就只需要找到待编译的文件,然后将编译后的文件输出到OutputPath即可.具体操作如下图:
其中Output Path为IntelliJ默认的编译文件所存放的路径.
至此,javac就已经集成到IDEA中了.下面我们运行一下检查正确与否.在java文件中,右键-External Tools-javac.见下图:
根据下图示,上述过程验证通过,在target的classes下生成了对应的.class文件.其实上述所有操作等价于红色长方形框中的命令运行结果.
整合javap工具.
和整合javac的步骤类似,这里不再给出详细的操作步骤,只给出如下图的最后的结果.核心目的是调用 javap -verbose packagename.classFileName.
运行得倒如下结果.至此所有设置全部完成