JD-GUI 反編譯Java程式的利器


Java程式碼在編譯(Compile)之後並不會產生出可直接被機器執行的機器碼(Machine Code),因為Java程式是透過Java虛擬機(Java Virtual Machine, JVM)執行的,所以Java程式碼在編譯時會把程式編譯成JVM看得懂的Java bytecode。Java bytecode的格式類似組合語言,由於形式非常固定,因此很容易就可以被反編譯(Decompile)回Java程式碼,而且反編譯之後的程式碼和原始的Java程式碼可以非常的相近。

網路上能找到的Java反編譯工具還蠻多種的,有些要付費,有些則不用。筆者會推荐使用JD-GUI,因為它非常的輕量,而且操作起來很方便,免費又跨平台

JD-GUI

http://jd.benow.ca/

JD-GUI可到官網直接下載。官網除了JD-GUI之外,另提供了Eclipse(JD-Eclipse)和IntelliJ(JD-IntelliJ)的插件能讓這些IDE擁有反編譯Java程式的能力。

JD-GUI的用法十分簡單,開啟JD-GUI之後,再選擇要反編譯Jar或是Class檔案。

JD-GUI 反編譯Java程式的利器

JD-GUI 反編譯Java程式的利器

關於作者

Magic Len

各位好,我是Magic Len,是這網站的管理員。我是台灣台中大肚山上人,畢業於台中高工資訊科和台灣科技大學資訊工程系,曾在桃機航警局服役。我熱愛自然也熱愛科學,喜歡和別人分享自己的知識與經驗。如果你有興趣認識我,可以加我的Facebook,並且請註明是從MagicLen來的。

相關文章