J'ai un fichier .jar. J'ai essayé d'exécuter la commande jar xf my.jar il n'a rien donné. J'ai essayé d'utiliser l'interface graphique de JD, mais le message suivant m'a été envoyé: Fichier d'entrée non valide '/home/hey/Desktop/my.jar'.
Est-ce que cela signifie que je ne peux pas extraire de classes de ce fichier .jar?
Si vous souhaitez extraire un fichier du fichier Jar, utilisez la commande suivante:
jar xf jar-filename archived-files
L'optionx
indique que nous souhaitons extraire les fichiers, l'optionf
indique le d'un fichier jar , lejar-filename
est le nom du fichier jar à extraire etarchived-files
sont les fichiers à extraire.
Nous pouvons également extraire tous les fichiers simplement en ne spécifiant pas les fichiers à extraire:
jar xf project.jar
Remarque: Si ce n'est pas accessible, faites comme @Legend dit, Ouvrez avec WinRaR vérifiez s'il est correct.jar
ou.Zip
fichier. Si ce n'est pas le cas avec winrar, il peut y avoir un problème dans.jar/.Zip
.
Vous pouvez ouvrir le fichier jar avec winrar, cela affichera tous les fichiers de classe qu'il contient, à partir de là, vous pourrez tous les faire glisser dans JD-GUI et les décompiler tous.
Comment avez-vous créé votre fichier .jar?
Je viens d'utiliser Dex2Jar sur MAC OSX comme si -
Sudo sh ~/Downloads/dex2jar-2.0/d2j-dex2jar.sh ~/mobile/pjr.mob.Android/obj/Debug/Android/bin/classes.dex --force
et le fichier résultant avait un problème d'autorisations. Ainsi, lorsque je l'ai ouvert avec l'interface graphique de JD, il a donné le "Chargeur de fichier d'entrée non valide:" erreur que vous avez mentionnée ci-dessus.
Si vous faites un -
Sudo chmod + xr ~/Téléchargements/dex2jar-2.0/classes-dex2jar.jar
Vous pourrez alors l'ouvrir dans l'interface graphique de JD.
pour les utilisateurs linux
unzip your.jar
La réponse de WickedW est correcte!
Sudo chmod +xr *.jar
alors vous pouvez ouvrir le pot avec jd-gui