四種方式查看Java字節碼(IDE使用IDEA)

在深入分析Java代碼時往往需要分析Java字節碼,從Java字節碼帶給我們更多的設計細節,瞭解底層原理。以下四種方式能夠快速的讓我們食用Java字節碼。

使用javap -v class名稱

直接在命令行使用

無需下載任何其他插件,直接可以使用。
如圖,查看了一個Spring Boot的入口類GreenaApplication.class的字節碼
在這裏插入圖片描述

在IDEA的命令行使用

很多時候能在IDEA中解決的,切換一個頁面多麻煩,尤其是CMD有些不大友好的體驗,直接使用IDEA的Terminal.
效果如下
在這裏插入圖片描述

使用IDEA的External Tools快捷食用

都已經在IDEA中了。每次要找到對應文件,然後在訪問Terminal效率還是太低。直接配置一個External Tools,方便快捷。
配置External Tool 路徑:File->Setting->Tools->External Tools 點擊綠色+添加
在這裏插入圖片描述
配置External Tools,這塊一定要注意

  • 1.一定要 $FileName$,不要使用FileClass,FileClass會帶有包名,執行javap -v命令後,會找不到對應的文件
  • 2.最好指定Working directory爲當前路徑即$FileDir$,防止掃描不必要的class導致class文件確認的錯誤。

一般配置了JAVA_HOME以及PATH的在Program中直接 寫入javap 就可以了。如果沒有配置,請直接選中…選擇javap.exe。
-v寫在Program 或者Arguments 區別不大。
在這裏插入圖片描述
配置好以後效果如下
在這裏插入圖片描述
點擊查看字節碼,機會看到我們在IDEA的Terminal執行的效果了。

IDEA自帶插件Show Bytecode

代碼執行以後,在View->找到Show Bytecode即可看到字節碼。IDEA插件生成的字節碼更具有可讀性,推薦使用。
在這裏插入圖片描述
效果如下
在這裏插入圖片描述

使用JBE - Java Bytecode Editor

JBE不僅僅可以查看字節碼,還可以修改字節碼。
下載地址
效果如下1
在這裏插入圖片描述

使用jclasslib

jclasslib查看字節碼。jclasslib還有很多其他功能,比如修改字節碼。平時使用IDEA時,更多的是使用IDEA插件。也可以使用jclasslib客戶端
IDEA安裝jclasslib路徑如圖。
在這裏插入圖片描述

安裝成功後,執行某代碼後。選擇 View->Show Bytecode With jclasslib。則會出現如下圖效果。不得不說就查看字節碼這塊,jclasslib插件還是更好 ,更值得推薦使用。
在這裏插入圖片描述


  1. 圖片來自http://set.ee/jbe/ ↩︎

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章