分析java語言特性的一個好幫手是使用javap工具查看java編譯后的字節碼,樓主今天在學習java泛型中的橋方法時遇到一些不解,想到javap這個好工具可以幫助解答一些疑惑,索性就搗鼓如何在eclipse中配置javap工具快速查看java字節碼。
樓主學習的代碼工程用的maven結構。默認java編譯后的class文件是放在: 工程目錄/target/classes 下的,故在配置javap的時候需要配置的變量有所不同,不能直接參考網上的教程方式:
首先進入run -> External Tool -> External Tools Configurations 然后在Program 節點選定后右鍵點擊“New” 創建一個新的擴展工具配置。
然后按照如下圖所示配置即可:
name:javap -c
location:指定javap的絕對路徑,如:C:\Java\jdk1.8.0_31\bin\javap.exe
working directory:返回工程所在的絕對路徑,如:${project_loc}
Arguments: 注意這里的參數配置,-classpath 指定的是java代碼編譯后class文件存放的目錄,這里我們配置的是相對於工程根目錄而言,class文件的相對目錄路徑,-c參數后面的值是指定要查看哪個文件的字節碼,${java_type_name} 變量返回你選取的類文件名。使用javap工具之前一定得獲取class文件,因此先讓你的代碼能正常run一遍吧。如:-classpath target/classes -c ${java_type_name} (target/classes是class的路徑)
如果你的工程不是maven的目錄結構,那么只用按照本文配置修改classpath參數的值指定你的class文件存放的相對路徑即可。使用javap工具的時候切記需要激活你當前java的代碼編輯窗口才能使用。
執行方法:
打開一個java文件,用鼠標點擊上面的“run”-->"Exteral tools"-->javap -c,在控制台中會輸出結果。
示例: