Méthode : 1. Téléchargez le plug-in "jad.exe" et placez-le dans le même répertoire que le fichier ".class" ; 2. Ouvrez la fenêtre de commande cmd et utilisez la commande cd pour saisir le répertoire où se trouve "Jad.exe" ;3. Exécutez la commande "Jad -d java file storage path-sjava class file path".
L'environnement d'exploitation de ce tutoriel : système windows7, version java8, ordinateur DELL G3.
Plug-in de décompilation jad.exe
Pour l'adresse de téléchargement, veuillez vous référer à :
https://varanekas.com/jad/
ttp://pan.baidu.com/s/1qWmNlww
Explication
Opération
Placer les fichiers jad.exe et .class dans le même répertoire (pas nécessaire, facultatif, sera abordé plus tard Explication)
Démarrer-Exécuter (ou Win+R)-cmd pour ouvrir la fenêtre de commande système et entrer dans le répertoire où se trouve Jad.exe
Par exemple :
f: cd F:\Jad
Entrez la commande Jad -d F:Jadtest -sjava test*.class
et appuyez sur Entrée pour générer le fichier Java
Exemple :
Jad -d F:\Jad\test -sjava test\*.class
Remarques : * dans *.class est un caractère générique Par défaut, tous les fichiers .class de ce répertoire sont sélectionnés. Si vous avez seulement besoin de décompiler un certain fichier .class, vous pouvez écrire directement le nom du fichier + .class
tel que : Jad -d F:Jadtest -sjava testCaseInfoSaveAction.class
Commande Jad - astuce :
-a - utiliser le format d'octets JVM pour annoter la sortie
-af - identique à -a, mais utiliser le nom complet lors de l'annotation
-clear - effacer tous les préfixes
-b - afficher des crochets redondants (par exemple, if(a) { b (); }, par défaut : no)
-d - Spécifiez le répertoire du fichier de sortie
-dead - Tentative de décompilation la partie morte du code (par défaut : non)
-disass - Pas besoin d'utiliser du bytecode pour décompiler (aucune source JAVA générée)
-f - Afficher le nom complet, qu'il s'agisse d'une classe ou d'une méthode
-ff - Afficher les membres de la classe avant la méthode (par défaut : après les méthodes)
-i - Afficher les valeurs initiales par défaut de toutes les variables
-l -lnc - Afficher le fichier Annoter avec le numéro de ligne (par défaut : non)
-nl - diviser les chaînes en utilisant le caractère de nouvelle ligne (par défaut : non)
-nodos - ne vérifie pas si le fichier classe est écrit en mode dos (CR avant NL, par défaut : check)
-nocast - ne génère pas de fichiers auxiliaires
-nocode - ne génère pas de code source pour les méthodes
- noconv - ne convertit pas les définisseurs Java (par défaut : do)
-noctor - non Autoriser les constructeurs vides
-noinner - désactive la prise en charge des classes internes (par défaut : active)
-nolvt - ignore les informations de table pour variables locales
-nonlb - ne pas afficher de nouvelle ligne lors de l'ouverture avant une parenthèse (par défaut : do)
-o - écraser la sortie sans confirmation (par défaut : non)
-p - envoyer le code décompilé au standard sortie STDOUT (par exemple, pour la tuyauterie)
-pa - Préfixe pour tous les packages dans les fichiers sources générés
-pc - Préfixe pour les classes avec des noms numériques (par défaut : _cls)
-pe - Préfixe pour les noms d'exceptions inutilisés (par défaut : _ex)
-pf - préfixe avec champs de nom numérique (par défaut : _fld)
-pi - utiliser.
-pl - Préfixe pour les variables locales avec des noms numériques (par défaut : _lcl)
-pm - Préfixe pour les méthodes avec des noms numériques (par défaut : _mth)
-pp - Préfixe avec des noms numériques Préfixe des paramètres de méthode (par défaut : _prm)
-pv - Regrouper les champs du même type sur une seule ligne (packfields)
-r - Restaurer la structure du répertoire du package
-s - Extension du fichier de sortie (par défaut : .jad)
- space - espace de sortie entre les mots-clés (if, while, etc.) et les expressions
-stat - affiche le nombre total de classes/méthodes/champs traités
-t - utilise les espaces Indent (par défaut : 4)
-t - Utiliser des tabulations au lieu d'espaces pour l'indentation
-v - Afficher les noms des méthodes lors de la décompilation
Tutoriels vidéo associés recommandés : Tutoriel vidéo Java
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!