web-dev-qa-db-fra.com

Extraire le code source du fichier .jar

Est-il possible d'extraire le code source d'un fichier .jar exécutable (Java ME)?

150
hiba

Utilisez JD GUI . Ouvrez l'application, faites glisser et déposez votre fichier JAR dans celle-ci.

137
adarshr

Vous pouvez extraire un fichier jar avec la commande:

jar xf filename.jar

Références: documentation JAR d'Oracle

41
elachance

Je crois que cela peut être fait très facilement. Vous pouvez toujours extraire les fichiers sources (fichiers Java) d'un fichier jar dans un fichier Zip.

Étapes pour obtenir les sources d'un fichier JAR sous forme de fichier Zip:

  1. Téléchargez JAD depuis http://techieme.fr/resources-needed/ et enregistrez-le à tout
    emplacement sur votre système.
  2. Faites glisser et déposez le fichier jar pour lequel vous voulez les sources sur le JAD. 3 JAD UI s'ouvrira avec toute la structure du paquet dans un format d'arborescence.
  3. Cliquez sur le menu Fichier et sélectionnez Enregistrer les sources JAR.
  4. Il enregistre les sources sous forme de Zip portant le même nom que le fichier jar.

J'espère que cela t'aides.

Le lien est mort pour une raison quelconque, il est donc difficile d'ajouter le lien à partir duquel vous pouvez télécharger le fichier JDGUI

35
dharam

Votre fichier JAR peut contenir source et javadoc. Dans ce cas, vous pouvez simplement utiliser jar xf my.jar pour les extraire.

Sinon, vous pouvez utiliser un décompilateur comme indiqué dans la réponse de adarshr:

Utilisez JD GUI . Ouvrez l'application, faites glisser et déposez votre fichier JAR dans celle-ci.

26
Matthew Willis

Je sais que c'est une vieille question Je pensais toujours que cela aiderait quelqu'un

1) Allez dans le dossier de votre fichier jar.

2) changez son extension en .Zip.

3) Vous êtes prêt à partir et pouvez facilement l'extraire en double-cliquant dessus.

Note: J'ai testé cela en MAC, ça marche. Espérons que cela fonctionnera aussi sur les fenêtres.

10
keen

AndroChef Java Decompiler produit un très bon code que vous pouvez utiliser directement dans vos projets ...

0
Nik theGeeK