jd gui下載 最新軟件|熱門排行|軟件分類|軟件專題|廠商大全

您的位置: 首頁編程開發(fā)編程工具 → jd-gui.exe(java反編譯工具) v1.6.0 綠色免費(fèi)版

jd-gui.exe(java反編譯工具)

v1.6.0 綠色免費(fèi)版 jd-gui.exe(java反編譯工具) 網(wǎng)友評分:8

同類相關(guān)軟件

軟件介紹

jd gui全稱為java decompiler,就是一個(gè)java語言的反編譯軟件,適合于java編程人員使用,它可以對完整的jar文件進(jìn)行反編譯,還可以直接修改相關(guān)的代碼,以及一些其他的功能。大家使用前注意看下方的使用幫助哦!教你如何解決打不開的問題。

jd-gui使用幫助

第一次運(yùn)行的時(shí)候可能提示“this application requires a Java Runtime Environment 1.8.0”(如下圖所示),后面的版本號可能會是1.5.0-1.8.0.

jd gui

這個(gè)大概的意思就是缺失java1.8.0的支持,只要安裝一個(gè)就可以了,點(diǎn)擊“確定”會自動(dòng)跳轉(zhuǎn)到官網(wǎng)進(jìn)行安裝;或者點(diǎn)擊下面的鏈接進(jìn)行安裝。

什么是反編譯

大家都知道,將源代碼轉(zhuǎn)換成二進(jìn)制執(zhí)行代碼的過程叫“編譯”,比如將C源代碼編譯成exe可執(zhí)行文件;那么把二進(jìn)制執(zhí)行代碼的過程就叫“反編譯”,比如把exe轉(zhuǎn)換為C源代碼就叫“反編譯”。

由于主流的C的編譯器都進(jìn)行了代碼的優(yōu)化,因此把C編譯生成的exe文件反編譯成C代碼非常困難。但是像Java、.net這樣基于虛擬機(jī)技術(shù)的編程語言則反編譯非常容易,Java平臺下有Jad、Jode、JD等反編譯器,.net平臺下則有Reflector等反編譯器,反編譯質(zhì)量非常高,甚至和源代碼幾乎沒什么差別。

反編譯得到的是源代碼嗎?

反編譯得到的代碼是非常接近于源代碼,但是或多或少與源代碼有一些差異的,比如一些表達(dá)式被優(yōu)化掉了,比如:

下面的源代碼:

int i=1+1;

學(xué)過《編譯原理》的同學(xué)知道有“常量優(yōu)化”這個(gè)編譯優(yōu)化算法,因此上邊的源代碼一般會被優(yōu)化為:int i=2;

由于在編譯過程中已經(jīng)進(jìn)行了優(yōu)化,把“1+1”這個(gè)原始的信息丟掉了,因此反編譯出來的代碼只能是:

int i=2;

可以看到反編譯得到的代碼和源代碼是有區(qū)別的。

比如:andriod中

download = (Button)findViewById(R.id.xiaz);

被優(yōu)化成了download = (Button)findViewById(0x7f070018);

主要功能

一、支持眾多java編譯器的反編譯;

二、支持對整個(gè)Jar文件進(jìn)行反編譯,并本源代碼可直接點(diǎn)擊進(jìn)行相關(guān)代碼的跳轉(zhuǎn);

jd gui使用方法

解壓縮后打開軟件,直接將jar包拖進(jìn)去就可以進(jìn)行編譯了。

jd gui下載

android反編譯說明:

android的apk反編譯工具,適合大家一起學(xué),可以把a(bǔ)ndroid生成的apk轉(zhuǎn)為java代碼,希望對大家有用。

一、更改apk文件的后綴名,如:LianyunHelper3.0.11.apk改成LianyunHelper3.0.11.zip

二、用zip解壓縮LianyunHelper3.0.11.zip文件

三、從解壓縮的文件夾中取出classes.dex文件并放到dex2jar.bat所在目錄

四、運(yùn)行cmd命令,進(jìn)入dex2jar.bat所在的目錄,輸入dex2jar.bat classes.dex即可生成classes.dex.dex2jar.jar文件

五、用jd-gui工具打開classes.dex.dex2jar.jar文件,即可看到源碼

六、將AndroidManifest.xml文件放到AXMLPrinter2.jar所在目錄,運(yùn)行cmd命令,進(jìn)入 AXMLPrinter2.jar所在目錄,輸入java -jar AXMLPrinter2.jar AndroidManifest.xml > AndroidManifest.txt。

常見問題

JD-Core和JD-GUI區(qū)別:

JD-Core是一個(gè)免費(fèi)的庫,從一個(gè)或多個(gè)“.class”文件中 重構(gòu)Java源代碼。JD-Core可以用來恢復(fù)丟失的源代碼,并深究Java運(yùn)行時(shí)類庫。支持Java 5的功能:如注釋,泛型或枚舉 。

JD-GUI 和 JD-eclipse都包括JD-Core。JD-GUI是一個(gè)獨(dú)立的顯示“.class” 文件Java源代碼的圖形用戶界面工具。您可以使用JD-GUI瀏覽和重建源代碼的即時(shí)訪問方法和字段,以代碼高度方式來顯示反編譯過來的代碼。

更新日志

v1.6.0更新內(nèi)容:

1.修正了“.class”表達(dá)式的識別錯(cuò)誤。

2.修正錯(cuò)誤識別“開關(guān)枚舉”指令。

3.用已知的數(shù)字常量(例如Long.MAX_VALUE)替換數(shù)值。

4.刪除了不必要的“java.lang”前綴。

5.修正了在最后位置上包含三元運(yùn)算符的try-cacht語句的識別錯(cuò)誤。

6.添加了返回的通用變量的轉(zhuǎn)換說明。

7.隱藏匿名類的合成字段。

軟件截圖

下載地址 電腦版

用戶評論

熱門評論

最新評論

第 2 樓 江蘇連云港客人 發(fā)表于: 2021/06/04 15:39:40
用來工作非常好用

支持(0) 蓋樓(回復(fù))

第 1 樓 福建廈門客人 發(fā)表于: 2021/04/13 13:57:05
感謝,終于打開了

支持(0) 蓋樓(回復(fù))

發(fā)表評論 查看所有評論(2)

昵稱:
請不要評論無意義或臟話,我們所有評論會有人工審核.
字?jǐn)?shù): 0/500 (您的評論需要經(jīng)過審核才能顯示)