我們知道苦掘,將源代碼轉(zhuǎn)換成二進(jìn)制執(zhí)行代碼的過程叫“編譯”,那么反編譯就是將二進(jìn)制執(zhí)行代碼轉(zhuǎn)換成源代碼藏雏。
在java開發(fā)里,源代碼是.java文件作煌,然后經(jīng)過編譯后生成計(jì)算機(jī)識(shí)別的.class文件掘殴,但是.class文件是計(jì)算機(jī)識(shí)別的我們一般看不明白,因此需要反編譯變成我們能讀懂的源碼粟誓,但是反編譯后的代碼并不是和源碼一模一樣奏寨,有些會(huì)被優(yōu)化掉,是極度接近的努酸。
JD-GUI 是一個(gè)用 C++ 開發(fā)的 Java 反編譯工具服爷,由 Pavel Kouznetsov開發(fā),支持Windows、Linux和蘋果Mac Os三個(gè)平臺(tái)仍源。而且提供了Eclipse平臺(tái)下的插件JD-Eclipse心褐。JD-GUI不需要安裝,直接點(diǎn)擊運(yùn)行笼踩,可以反編譯jar,class文件逗爹,可將整個(gè)jar包直接保存為*.src.zip源代碼包,反編譯迅速嚎于,錯(cuò)誤率極少掘而。
JD分為JD-GUI、JD-Eclipse/JD-Intellij兩種運(yùn)行方式于购,JD-GUI是以單獨(dú)的程序的方式運(yùn)行袍睡,JD-Eclipse/JD-Intellji則是以一個(gè)Eclipse/IDEA插件的方式運(yùn)行。
官網(wǎng):https://github.com/java-decompiler
JD-GUI下載:
官方下載:https://github.com/java-decompiler/jd-gui/releases
csdn下載:https://download.csdn.net/download/chenchunlin526/10024535
網(wǎng)盤下載鏈接: https://pan.baidu.com/s/1slK94QT 密碼: jd6a
使用方法:
一肋僧,打開下載的.exe文件斑胜,點(diǎn)擊file---open file,選擇要反編譯的jar包或者class文件嫌吠,如下所示:
二止潘,直接將要反編譯的jar包或者class文件拖到JD-GUI圖標(biāo)上,將會(huì)自動(dòng)打開辫诅。
原文作者技術(shù)博客:http://www.reibang.com/u/ac4daaeecdfe
95后前端妹子一枚凭戴,愛閱讀,愛交友炕矮,將工作中遇到的問題記錄在這里么夫,希望給每一個(gè)看到的你能帶來(lái)一點(diǎn)幫助。
歡迎留言交流吧享。