javap 是 JDK 自帶的類文件反編譯工具,能將 .class 字節碼還原為可讀的 JVM 指令集,常用於:
+ 拼接、+= 語法糖)將其集成到 Eclipse 外部工具菜單,可實現「右鍵類文件 → 一鍵反編譯」,極大提升分析效率。
菜單欄依次點擊:Run → External Tools → External Tools Configurations...
在左側樹形列表選中 Program,點擊工具欄 New launch configuration 圖標(或右鍵選 New)。
| 欄位 | 值/說明 |
|---|---|
| Name | javap(自定義顯示名稱) |
| Location | 點擊 Browse File System... 選擇 JDK 安裝目錄下的 bin/javap.exe(Windows)或 bin/javap(Linux/Mac) |
| Working Directory | ${workspace_loc}/${project_name}(當前專案根目錄) |
| Arguments | -classpath bin -c ${java_type_name} |
${workspace_loc}:工作空間絕對路徑${project_name}:當前選中專案名稱${java_type_name}:編輯器中光標所在類的全限定名(含包路徑)-classpath bin:指定類文件搜尋路徑為專案 bin 目錄(Eclipse 默認輸出目錄)-c:輸出方法的字節碼指令(核心參數)錯誤提示:
Error: Could not find class ...
原因:未在編輯器中選中具體的 Java 文件,導致 ${java_type_name} 解析為空。
解決:執行前務必在編輯器或 Package Explorer 中點擊選中目標 .java 文件。
> ${project_loc}/javap_output.txt 將結果重定向到專案目錄下文件。-l 參數替代 -c。-verbose 等同於 -c -l -p -s -constants。通過簡單 4 步即可將 javap 整合進 Eclipse,實現類文件字節碼的一鍵檢視。這對深入理解 Java 編譯機制、排查疑難雜症、學習 JVM 底層原理具有極高實戰價值。