溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

怎么對(duì)Java class文件進(jìn)行反編譯

發(fā)布時(shí)間:2021-12-21 10:32:48 來源:億速云 閱讀:513 作者:柒染 欄目:大數(shù)據(jù)

這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)碛嘘P(guān)怎么對(duì)Java class文件進(jìn)行反編譯,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

如何對(duì)Java class文件進(jìn)行反編譯

可以用什么程序來編譯class文件 會(huì)得到j(luò)ava代碼還是JVM編譯的代碼?在這個(gè)網(wǎng)站上性能討論的問題上經(jīng)常看到進(jìn)行反編譯文件來看編譯器如何優(yōu)化一些東西

“反編譯”的藝術(shù)也可以被認(rèn)為是逆向工程。雖然有時(shí)在逆向工程時(shí)你并不總是能夠訪問二進(jìn)制文件。

沒人提到 bytecodeviewer.com嗎,它可以反編譯為java源碼和字節(jié)碼(對(duì)于java源碼是基于JAD)

www.javadecompilers.com

它是最流行的Java編譯器,用c++編寫,速度很快 比較過時(shí),且不提供支持,不支持Java5及以后的版本 這個(gè)網(wǎng)站也列出了其他的工具。

正如Salvador Valencia在評(píng)論(2017年9月)中所說 javadecompiler提供了一個(gè)SaaS,您可以將.class文件上傳到云端,并返回反編譯代碼。(原答案:2008年10月) 定義J2SE 5.0(Java SE 5)主要功能的JSR 176的最終版本已于2004年9月30日發(fā)布。由Pavel Kouznetsov先生編寫的著名Java反編譯器JAD支持的最新Java版本是JDK 1.3。

Java Decompiler(一個(gè)快速Java反編譯器)具有:顯式支持反編譯和分析Java 5+“.class”文件。一個(gè)很好的GUI:怎么對(duì)Java class文件進(jìn)行反編譯

它適用于從JDK 1.1.8到JDK 1.7.0以及其他(Jikes,JRockit等)的編譯器。它具有在線實(shí)時(shí)演示版本,實(shí)際上功能齊全!你可以在頁面上刪除一個(gè)jar文件,看看反編譯的源代碼而不安裝任何東西。

比如:Procyon:開源(Apache 2) Krakatau:開源(GPLv3) CFR:開源(MIT) JAD DJ Java Decompiler Mocha 還有很多。

這些產(chǎn)生Java代碼,可以讓你看到JVM字節(jié)碼。要查看Java源代碼,請(qǐng)檢查一些反編譯器。去搜索jad。如果要查看字節(jié)碼,只需使用JDK附帶的javap即可。

我試了幾個(gè),Procyon對(duì)我來是最好的。它正在積極開發(fā)中,并支持最新版Java的許多功能。

以下是我試過的其他的:CFR 還可以,但是經(jīng)常反編譯失敗。我會(huì)密切注意這個(gè)。還積極開發(fā)支持最新的Java功能。Krakatau 采用不同的方法,它嘗試輸出等效的Java代碼,而不是嘗試重建原始源,這有可能使混淆代碼更好。根據(jù)我的測(cè)試,它與Procyon大致相當(dāng),但仍然很高興有不同的東西。我確實(shí)必須使用-skip命令行標(biāo)志,因此它不會(huì)停止錯(cuò)誤。積極開發(fā),有趣的是它是用Python編寫的。JD-GUI 工作,但Procyon的輸出要好得多。這是一個(gè)將Procyon輸出與原始和JD-GUI進(jìn)行比較的頁面。JD-GUI也可以作為Eclipse插件使用,它根本不適用于我。似乎不是開源的,發(fā)展似乎是零星的。JAD

工作,但只支持Java 1.4及更低版本。也可以作為Eclipse插件使用。不再在開發(fā)中。

我使用JAD Decompiler。

JD-GUI真的很棒。你可以打開一個(gè)jar文件并瀏覽代碼,就好像正在使用IDE一樣。好東西。

上述就是小編為大家分享的怎么對(duì)Java class文件進(jìn)行反編譯了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI