Heim > Java > JavaBase > So dekompilieren Sie Klassendateien in Java-Dateien

So dekompilieren Sie Klassendateien in Java-Dateien

青灯夜游
Freigeben: 2023-01-13 00:39:55
Original
28734 Leute haben es durchsucht

Methode: 1. Laden Sie das Plug-in „jad.exe“ herunter und legen Sie es im selben Verzeichnis wie die Datei „.class“ ab. 2. Öffnen Sie das cmd-Befehlsfenster und geben Sie mit dem Befehl cd das Verzeichnis ein, in dem sich „Jad“ befindet .exe“ befindet; 3. Der Befehl „Jad -d Java-Dateispeicherpfad-Sjava-Klassendateipfad“ ist ausreichend.

So dekompilieren Sie Klassendateien in Java-Dateien

Die Betriebsumgebung dieses Tutorials: Windows7-System, Java8-Version, DELL G3-Computer.

1. Werkzeuge/Materialien

jad.exe-Dekompilierungs-Plug-in

Bitte beachten Sie die Download-Adresse:

https://varanekas.com/jad/

ttp://pan.baidu .com/ s/1qWmNlww

2. Methode/Schritt

Anleitung

  • Unter den vielen JAVA-Dekompilierungstools gibt es mehrere sehr bekannte Tools, die dieselbe Kern-Engine verwenden – JAD, darunter Hauptsächlich darunter: Front End
    Plus, mDeJava, Decafe Pro, Cavaj Java Decompiler, DJ Java
    Decompiler, NMIs Java Class
    Viewer und inländische JAVA-Quellcode-Dekompilierungsexperten usw. JAD selbst ist ein Befehlszeilentool ohne grafische Oberfläche. Die meisten der oben genannten Tools fügen lediglich eine grafische Oberfläche hinzu, die auf dem JAD-Kernel basiert. Die gemeinsame Auswahl so vieler Produkte reicht aus, um die herausragende Position von JAD im Bereich der JAVA-Dekompilierung zu beweisen.

Vorgang

Jad.exe- und .class-Dateien im selben Verzeichnis ablegen (nicht erforderlich, optional, wird später erklärt)

So dekompilieren Sie Klassendateien in Java-Dateien

Start-Ausführen (oder Win+R)-cmd Öffnen Öffnen Sie das Systembefehlsfenster und geben Sie das Verzeichnis ein, in dem sich Jad.exe befindet „Bildbeschreibung hier einfügen“/>

Beispiel:

f: 
cd F:\Jad
Nach dem Login kopieren
So dekompilieren Sie Klassendateien in Java-Dateien Hier Bildbeschreibung einfügen

Bemerkungen: *.class in * ist ein Platzhalterzeichen. Alle .class-Dateien in diesem Verzeichnis sind standardmäßig ausgewählt. Wenn Sie nur eine bestimmte .class-Datei dekompilieren müssen , Sie können den Dateinamen + .class direkt schreiben

Jad -d F:Jadtest -sjava test*.class 回车 即可生成Java文件

So dekompilieren Sie Klassendateien in Java-Dateien

示例:

Jad -d F:\Jad\test -sjava test\*.class
Nach dem Login kopieren

So dekompilieren Sie Klassendateien in Java-Dateien
备注说明: *.class 中*是通配符,默认选中此目录下所有.class文件,如只需要反编译某一个.class文件,可直接写成 文件名+.class

如:Jad -d F:Jadtest -sjava testCaseInfoSaveAction.classwie zum Beispiel: Jad -d F:Jadtest -sjava testCaseInfoSaveAction.class

Jad-Befehl--Hilfetipp:

-a - Verwenden Sie das JVM-Byteformat, um die Ausgabe mit Anmerkungen zu versehen
-af – Gleich wie -a, aber verwenden Sie beim Kommentieren den vollständigen Namen
-clear – alle Präfixe löschen
-b – redundante Klammern ausgeben (z. B. if(a) { b(); } , Standard: nein)
-d – Dateiverzeichnis der Ausgabedatei angeben
-dead – versucht, den toten Teil des Codes zu dekompilieren (Standard: nein)
-disass – dekompiliert nicht im Bytecode (kein JAVA). Quelle generiert)
-f – gibt den gesamten Namen aus, unabhängig davon, ob es sich um eine Klasse oder eine Methode handelt
-ff – gibt die Mitglieder der Klasse vor der Methode aus (Standard: nach Methoden)
-i – gibt den Standardanfangswert aller Variablen aus
-l – Zeichenfolgen in die angegebene Anzahl von Zeichenblöcken aufteilen (Standard: Nein)
-lnc – Die Ausgabedatei mit Zeilennummern versehen (Standard: Nein)
-nl – Zeichenfolgen mit Zeilenumbrüchen aufteilen (Standard). : nein)
-nodos – Nicht prüfen, ob die Klassendatei mit „Schreiben im DOS-Modus“ endet (CR vor NL, Standard: prüfen)
-nocast – keine Hilfsdateien generieren
-nocode – den Quellcode des nicht generieren Methode
-noconv – keine Java-Definitionen konvertieren (Standard: tun)
-noctor – keine leeren Konstruktoren zulassen
-noinner – Unterstützung für innere Klassen ausschalten (Standard: einschalten)
-nolvt – Tabelleninformationen für lokale Variablen ignorieren
-nonlb – keine neue Zeile ausgeben, bevor eine Klammer geöffnet wird (Standard: do)
-o – Ausgabe ohne Bestätigung überschreiben (Standard: nein)
-p – dekompilierten Code an die Standardausgabe STDOUT senden (z. B. für Piping)
-pa - Präfix, das zum Generieren aller Pakete in der Quelldatei verwendet wird
-pc – Präfix für Klassen mit numerischen Namen (Standard: _cls)
-pe – Präfix für nicht verwendete Ausnahmenamen (Standard: _ex)
-pf – Präfix für Felder mit numerischen Namen Namen (Standard: _fld)
-pi - verwenden.
-pl – Lokalen Variablen numerische Namen voranstellen (Standard: _lcl)
-pm – Methoden numerischen Namen voranstellen (Standard: _mth)
-pp – Methoden numerischen Namen voranstellen parms (Standard: _prm)
-pv – Felder packen mit dem gleichen Typ in einer Zeile (packfields)
-r – Wiederherstellen der Paketverzeichnisstruktur
-s – Ausgabedateierweiterung (Standard: .jad)
– Leerzeichen – Schlüsselwort (if, while usw.) und Ausgabe von Leerzeichen zwischen Ausdrücken
-stat – zeigt die Gesamtzahl der verarbeiteten Klassen/Methoden/Felder an
-t – verwendet Leerzeichen zum Einrücken (Standard: 4)
-t – verwendet stattdessen Tabulatoren. Verwenden Sie Leerzeichen zum Einrücken
-v – Methodennamen beim Dekompilieren anzeigen

Empfohlene verwandte Video-Tutorials: Java-Video-Tutorials

Das obige ist der detaillierte Inhalt vonSo dekompilieren Sie Klassendateien in Java-Dateien. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage