java反編譯工具(java反編譯工具apktool)

本文目錄一覽:

幾種java反編譯軟體的安裝以及使用總結

下面是在網上找的幾種反編譯軟體的安裝以及使用:

一、JD-JUI

官網下載鏈接:

下載之後解壓,

點擊「jd-gui.exe」運行:

直接將”.jar”文件拖入進去即可查看裡邊的「.class」文件,如上圖所示。

二:Luyten

官網下載鏈接:

點擊「luyten-0.5.3.exe」下載,下載之後點擊運行,運行後的界面如圖所示,同樣也是講「.jar」文件拖入進入即可。

三、在eclipse中安裝反編譯工具

準備工作:

「jad.exe」下載:

「net.sf.jadclipse_3.3.0.jar」下載:

jad.exe」下載:

「net.sf.jadclipse_3.3.0.jar」下載:

然後將「net.sf.jadclipse_3.3.0.jar」拷貝到eclipse的plugins目錄下,再刪除eclipse的configuration目錄下「org.eclipse.update」文件,這一步很重要!

重啟eclipse,點擊window-Preference-Java,你會發現裡邊多了一個插件「JadClipse」,

選中這個插件,將下圖中紅圈圈的地方的地址填寫為你 「jad.exe」文件的地址

還沒有配置完,先不要close,

點擊General-Editors-File Associations 後,進入下邊的界面

設置.class 文件默認打開方式:

設置.class without source文件的默認打開方式,

需要注意的是,「JadClipse Class File Viewer」這個一開始是沒有的,需用添加,如下圖所示:

接下來在eclipse中查看反編譯後的代碼:(這種方法可能不合適,但是能夠查看)

新建一個EJB project,右鍵「import」,選中”EJB JAR file”,導入你的jar包,Finish

在項目下找你要查看的反編譯的文件即可,如果你遇到了下邊的這種情況

關閉這個文件後再次打開,就可以查看了(我的是這樣,所以我感覺這個方法不太好,但別的方法又不知道怎麼查看):

有錯誤或者有更好的方法,希望大家在下邊留言指出

JAVA反編譯軟體

由於JAVA語言安全性高、代碼優化、跨平台等特性,從1995年5月由SUN公司發布後,迅速取代了很多傳統高級語言,佔據了企業級網路應用開發等諸多領域的霸主地位。

不過,JAVA最突出的跨平台優勢使得它不能被編譯成本地代碼,而要以中間代碼的形式運行在虛擬機環境中,這使得JAVA的反編譯要比別的高級語言容易實現,並且反編譯的代碼經過優化後幾乎可以與源代碼相媲美。

為了更好地保護知識產權,避免本公司的智力成果輕易被人竊取,開發者有必要對反編譯工具深入了解,以便有針對性地採取保護措施。

目前,比較流行的JAVA反編譯工具有近30種,其中有三款堪稱精品:

一、 應用廣泛的JAD

在眾多的JAVA反編譯工具中,有幾種非常著名的工具使用了相同的核心引擎——JAD,其中主要包括:Front End Plus、mDeJava、Decafe Pro、Cavaj Java Decompiler、DJ Java Decompiler、NMI』s Java Class Viewer和國產的JAVA源代碼反編譯專家。

JAD本身是一個命令行工具,沒有圖形界面,上述的這些工具大多是在JAD內核的基礎之上加了一個圖形界面而已。這麼多種產品的共同選擇,足可證明JAD在JAVA反編譯領域中的尊貴地位。

JAD是使用Microsoft Visual C++開發的,運行速度非常快,可以處理很複雜的JAVA編譯文件。眾多的參數使JAD可以靈活應付多種加密手段,令反編譯的代碼更加優化和易讀。由於JAD參數太多,沒必要一一解釋,其中有幾個最常用的如下(以JAD 1.5.8f版本為例):

-d

– 用於指定輸出文件的目錄

-s – 輸出文件擴展名(默認為: .jad),通常都會把輸出文件擴展名直接指定為.java,以方便修改的重新編譯。

-8 – 將Unicode字元轉換為ANSI字元串,如果輸出字元串是中文的話一定要加上這個參數才能正確顯示。

最常用的反編譯指令如下所示:

Jad –d c:\javasource –s .java -8 javatest.class

這條指令將當前目錄下的javatest.class反編譯為javatest.java並保存在c:\javasource目錄里,其中的提示輸出為中文,而不是Unicode代碼。

二、 源碼開放的JODE

JODE是全球最大的開源項目網站Sourceforge.net的成員,在所有的JAVA反編譯器中,JODE的反編譯效果是最好的,尤其是對付一些常見的加密手段,例如混淆技術等,更是出類拔粹。

JODE本身也是純JAVA開發的,最近越來越多的JAVA反編譯軟體也選擇JODE來做它們的核心引擎,例如JCavaj Java Decompiler、BTJ (Back To Java)、jEdit』s JavaInsight plugin等。

JODE是一個可運行的JAR文件,在windows環境下雙擊即可運行。

需要特別說明的是,JODE不是通過常規的Open-File的方式來載入JAVA編譯後的類文件(*.class)或是類包(*.jar)的, 而是通過在Options菜單中的Set Classpath來實現的,單獨的類文件可以將它的上一級目錄作為Classpath輸入,然後再選擇Reload Classpath即可。

新加入的類包或是類的名字會在左側窗口出現,雙擊類包名可以展開目錄樹結構,雙擊需要反編譯的類名則在右上角的窗口中直接顯示反編譯後的源代碼。

三、 獨樹一幟的DAVA

DAVA不是一個獨立的JAVA反編譯器,而是JAVA代碼優化工具Soot的一部分。Soot和JODE一樣是純JAVA開發的,也是一個獨立的JAR包,但卻不能通過雙擊直接運行,而是象JAD一樣在命令行狀態運行。

Soot對環境變數的配置要求非常嚴格,通常情況下要對CLASSPATH做如下設置:

Set CLASSPATH=%CLASSPATH%;c:\sootdir\sootclasses-2.1.0.jar;.;

其中的c:\sootdir\是下載的soot類包放置的路徑,CLASSPATH末尾的.;代表了當前目錄,如果不加上這個的話Soot經常會報一個找不到類的錯誤。

DAVA是作為Soot的一個參數使用的,通常的用法如下:

Java soot.Main –f dava –d c:\javasource javatest

注意最後的類名不用帶.class後綴,因為它默認是處理class文件,這個操作與前述的JAD的參數效果相同。

DAVA採取了流程優化的方式進行反編譯,與傳統反編譯思路不盡相同,但卻對改變流程類的加密方法有獨特的反編譯效果。

上述的三種工具各有千秋,但效果都非常不錯。經測試,它們基本上都可以把JDK自帶的一些常式完全反編譯,然後不加任何修改可再編譯成功,並能正常運行!

java反編譯工具jd gui怎麼用

jd-gui可以將看到的反編譯結果保存到一個zip壓縮包裡面。

具體操作為:File-》Save All Sources,然後打開壓縮包就可以對java源文件進行修改了。

求java開發反編譯破解工具(DJ Java Decompiler)V3.12.12.99網盤資源

這個問題建議去千鋒教育諮詢java開發專業老師。學習java開發推薦千鋒教育,千鋒教研院聯合國內一線互聯網企業深化產業變革,共同打造互聯網技術生態共同體,實力強大,推薦選擇!

學習Java的優勢:

1、Java廣受歡迎:Java仍然是世界上最受歡迎的編程語言之一,有無限多種方法使用Java。在TIOBE多次公布的編程語言排行榜,Java領跑前三!

2、薪資可觀:職業規劃公司Gooroo在一份薪資和需求報告中指出,Java仍然是美國、英國和澳大利亞最受歡迎和薪資最高的編程語言之一。

3、Java程序員市場緊缺:據不完全統計,目前國內每年IT人才缺口達20萬之多,而且缺口還在擴大,Java作為廣泛使用的編程語言,擁有龐大的客戶群,現有的人才儲備還遠遠不夠,在可預計的未來,Java程序員都將處於供小於求的狀態。

4、Java無處不在:據估計,全球範圍內有超過30億部設備運行Java,超過其他任何一種語言。

5、優秀的開發工具:能夠確保工作效率的優秀開發工具。

想要了解更多有關Java開發的相關信息,推薦諮詢千鋒教育。採用全程面授高品質、高體驗培養模式,學科大綱緊跟企業需求,擁有國內一體化教學管理及學員服務,在職業教育發展道路上不斷探索前行,公司總部位於北京,目前已在20個城市成立分公司,現有教研講師團隊300餘人。

反編譯工具 java jad怎麼使用方法

下好以後解壓就可以用了,軟體就只有一個exe文件和一個幫助文件,為了方便使用,我直接將exe文件放到JDK的bin目錄里了:)

下面先來看看從網上搜集來的介紹:在眾多的JAVA反編譯工具中,有幾種非常著名的工具使用了相同的核心引擎——JAD,其中主要包括:Front

End Plus、mDeJava、Decafe Pro、Cavaj Java Decompiler、DJ Java

Decompiler、NMI』s Java Class Viewer和國產的JAVA源代碼反編譯專家。

JAD本身是一個命令行工具,沒有圖形界面,上述的這些工具大多是在JAD內核的基礎之上加了一個圖形界面而已。這麼多種產品的共同選擇,足可證明JAD

在JAVA反編譯領域中的尊貴地位。 JAD是使用Microsoft Visual

C++開發的,運行速度非常快,可以處理很複雜的JAVA編譯文件。眾多的參數使JAD可以靈活應付多種加密手段,令反編譯的代碼更加優化和易讀。由於

JAD參數太多,沒必要一一解釋,其中有幾個最常用的如下:

-d dir – 用於指定輸出文件的目錄

-s ext – 輸出文件擴展名(默認為: .jad),通常都會把輸出文件擴展名直接指定為.java,以方便修改的重新編譯。

-8 – 將Unicode字元轉換為ANSI字元串,如果輸出字元串是中文的話一定要加上這個參數才能正確顯示。

最常用的反編譯指令如下所示:

Jad -d c:\test -s .java -8 HelloWorld.class

這將當前目錄下的HelloWorld.class反編譯為HelloWorld.java並保存在c:\test目錄里,其中的提示輸出為中文,

而不是Unicode代碼。

附件:對下載後的說明文檔的簡單翻譯,希望對你有所幫助(mathsfan修改於2006.10.29,翻譯的不好請見諒)0、1略去2、怎樣使用JAD

反編譯一個簡單的java class文件’example1.class’用如下命令: jad example1.class

這個命令將在當前目錄下創建一個’example1.jad’文件,假如當前目錄下存在這個文件,則JAD會提示你覆蓋它與否。選項

-o 允許覆蓋時沒有任何提示。選項 -s ext允許改變輸出文件的後綴名: jad -sjava example1.class

這個命令將要創建’example1.java’文件。在一起使用-o 和

-sjava選項時請小心,因為JAD會附帶的重寫你的源文件。JAD使用JAVA

class的名字作為輸出文件的名字。例如,假如class文件’example1.class’包含JAVA class

‘test1’那麼JAD將會創建文件’test1.jad’而不是’example1.jad’。假如你想具體指明你的輸出文件的名字使用輸出重命名:

jad -p example1.class myexm1.java

選項 –d允許你具體指明另外的輸出文件目錄,不管這個目錄是新建的、默認的或者當前目錄。例如:

jad -o -dtest -sjava *.class

(或者 jad -o -d test -s java *.class, 這個有同樣的效果)

這個命令將在當前目錄下反編譯所有的.class文件並在’test’文件夾下建立所有擴展名為.java的輸出文件。

假如你想反編譯整個目錄樹下的JAVA classes,使用如下命令:

jad -o -r -sjava -dsrc tree/**/*.class

這個命令將反編譯當前目錄樹里所有的.class文件並且在當前目錄下建立src文件夾後根據包的名字來輸出文件。例如,假如有一個文件

‘tree/a/b/c.class’在包’a.b’下包含了class ‘c’,那麼輸出文件的名字為’src/a/b/c.java’。

在先前的命令上將通配符那裡注釋掉。則它是用JAD來處理而不是command殼,所以在UNIX上的最後一次參數將會被單獨引用。

jad -o -r -sjava -dsrc ‘tree/**/*.class’

你想檢查編譯後的文件的正確性或者出於好奇的情況下,這裡有一個選項 –a 將會告訴JAD給輸出的JAVA虛擬位元組碼註解。

求各種好用的反編譯工具!!

如PB的,最常用的是 PB反編譯專家 SHUDEPB

.net,一般是Reflector

dephi,一般是dede

JAVA,比較出名的有小穎的反編譯專家

XJad(Java源代碼反編譯工具) V2.2

XJad是基於Jad核心的Java源程序反編譯軟體,內置Jad1.5.8e2。

XJad可處理多個*.class文件,可以處理文件夾內的所有文件,甚至可以處理*.jar文件。

XJad帶有多頁面文本編輯器,反編譯完成後可以直接編輯查看,編輯器支持java語法的高亮顯示功能。

XJad是一個純綠色軟體,為使用方便,可以在選項中設置集成到資源管理器中,這樣在*.class、*.java、*.jar文件和目錄上隨時點擊右鍵都可直接進行操作。

XJad還帶有導出當前編輯器中的代碼為HTML文件的功能,HTML文件保持代碼高亮顯示的樣式風格。

使用說明

===========

1、反編譯class文件:打開一個或者多個*.class文件,XJad反編譯後,重命名為*.java文件,保存至當前文件夾,並在編輯器中打開查看;

2、反編譯文件夾:在軟體中選擇反編譯文件夾或右鍵點擊文件夾選擇反編譯,XJad將該文件夾下所有*.class文件進行反編譯,並保存至該文件夾下,依據包路徑信息生成文件夾路徑,如com.spring.framework.*,將建立com\\spring\\framework的文件夾結構;

3、反編譯jar文件:打開一個*.jar文件,XJad將該Jar文件中的所有*.class文件解壓縮到臨時目錄並進行反編譯,並將源文件帶包路徑信息保存至當前文件夾下名稱為「~」 + *.jar 的文件夾中;

flash反編譯工具 閃客精靈

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/232160.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-11 12:51
下一篇 2024-12-11 12:51

相關推薦

  • java client.getacsresponse 編譯報錯解決方法

    java client.getacsresponse 編譯報錯是Java編程過程中常見的錯誤,常見的原因是代碼的語法錯誤、類庫依賴問題和編譯環境的配置問題。下面將從多個方面進行分析…

    編程 2025-04-29
  • Java JsonPath 效率優化指南

    本篇文章將深入探討Java JsonPath的效率問題,並提供一些優化方案。 一、JsonPath 簡介 JsonPath是一個可用於從JSON數據中獲取信息的庫。它提供了一種DS…

    編程 2025-04-29
  • Java騰訊雲音視頻對接

    本文旨在從多個方面詳細闡述Java騰訊雲音視頻對接,提供完整的代碼示例。 一、騰訊雲音視頻介紹 騰訊雲音視頻服務(Cloud Tencent Real-Time Communica…

    編程 2025-04-29
  • Python字典去重複工具

    使用Python語言編寫字典去重複工具,可幫助用戶快速去重複。 一、字典去重複工具的需求 在使用Python編寫程序時,我們經常需要處理數據文件,其中包含了大量的重複數據。為了方便…

    編程 2025-04-29
  • Java Bean載入過程

    Java Bean載入過程涉及到類載入器、反射機制和Java虛擬機的執行過程。在本文中,將從這三個方面詳細闡述Java Bean載入的過程。 一、類載入器 類載入器是Java虛擬機…

    編程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介紹

    本文將詳細介紹Java Milvus SearchParam withoutFields的相關知識和用法。 一、什麼是Java Milvus SearchParam without…

    編程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java語言中的一個版本,於2014年3月18日發布。本文將從多個方面對Java 8中某一周的周一進行詳細的闡述。 一、數組處理 Java 8新特性之一是Stream…

    編程 2025-04-29
  • Java判斷字元串是否存在多個

    本文將從以下幾個方面詳細闡述如何使用Java判斷一個字元串中是否存在多個指定字元: 一、字元串遍歷 字元串是Java編程中非常重要的一種數據類型。要判斷字元串中是否存在多個指定字元…

    編程 2025-04-29
  • VSCode為什麼無法運行Java

    解答:VSCode無法運行Java是因為默認情況下,VSCode並沒有集成Java運行環境,需要手動添加Java運行環境或安裝相關插件才能實現Java代碼的編寫、調試和運行。 一、…

    編程 2025-04-29
  • Java任務下發回滾系統的設計與實現

    本文將介紹一個Java任務下發回滾系統的設計與實現。該系統可以用於執行複雜的任務,包括可回滾的任務,及時恢復任務失敗前的狀態。系統使用Java語言進行開發,可以支持多種類型的任務。…

    編程 2025-04-29

發表回復

登錄後才能評論