這幾個(gè)開(kāi)源的Java、Apk反編譯工具,你可曾用過(guò)
Java開(kāi)發(fā)神器IDEA,有自帶class反編譯功能,而且調(diào)試也非常方便。那么,除了IDEA可以反編譯之外,還有其它的反編譯工具嗎?這里就分享幾個(gè)Github中開(kāi)源的反編譯工具。
jadx
Jadx可以將APK、dex、aar、aab、jar和zip文件中的字節(jié)碼反編譯為Java類(lèi)。還可以附加App進(jìn)程調(diào)試和反混淆代碼。支持GUI和命令行兩種運(yùn)行模式


源碼地址
:https://github.com/skylot/jadx.git
bytecode-viewer
開(kāi)源、輕量級(jí)的Java、apk反編譯工具,還可以查看,編輯字節(jié)碼



源碼地址
:https://github.com/Konloch/bytecode-viewer.git
jd-gui
jd-gui這款工具,應(yīng)該很多朋友都用過(guò),綠色,輕便,exe文件僅1M+。


源碼地址
:https://github.com/java-decompiler/jd-gui.git
Luyten
Luyten這個(gè)工具沒(méi)用過(guò),不是很了解。其也具備基本的class反編譯工具


源碼地址
:https://github.com/deathmarine/Luyten.git
Recaf
Recaf除了基本的class反編譯功能外,還可以進(jìn)行一些簡(jiǎn)單的編輯


源碼地址
:https://github.com/Col-E/Recaf.git
GDA
GDA(GJoy Dex Analyzer)是用C++開(kāi)發(fā)并開(kāi)源的強(qiáng)大的Dalvik字節(jié)碼反編譯器,具有快速分析、低內(nèi)存和磁盤(pán)消耗的優(yōu)勢(shì),并具有更強(qiáng)的反編譯apk、dex、odex、oat、jar、class、aar文件的能力,也支持反混淆。


源碼地址
:https://github.com/fesh0r/fernflower.git
fernflower
fernflower,jar反編譯工具,需要通過(guò)命令行模式,無(wú)GUI界面。該功能已經(jīng)集成到IDEA插件中

源碼地址
:https://github.com/JetBrains/intellij-community/tree/master/plugins/java-decompiler/engine
cfr
cfr,也是一款通過(guò)命令行模式運(yùn)行的反編譯工具。反編譯文件,可以是單個(gè)class,可以是jar

源碼地址
:https://github.com/leibnitz27/cfr.git
反編譯、反混淆工具,在某些時(shí)候,能幫助我們了解、學(xué)習(xí)到一些東西。但是,這些工具僅僅是用來(lái)學(xué)習(xí),請(qǐng)注意尺度,反混淆也不是都能成功。



























