Voir le contenu de a.jar fichier

quelle serait la manière la plus facile de visualiser les classes, les méthodes, les propriétés, etc. à l'intérieur d'un fichier jar? Je suis à la recherche de quelque chose d'équivalent à la très utile Lutz Roeder. réflecteur net - pour Java

162
demandé sur Dani 2008-11-26 15:19:42

27 réponses

en utilisant le JDK, jar -tf affichera la liste des fichiers dans le bocal. javap vous donnera plus de détails à partir d'un fichier de classe.

203
répondu Tom Hawtin - tackline 2018-08-03 09:12:19

je les ouvre habituellement avec 7-Zip... Il permet au moins de voir les paquets, les classes et les ressources.

Si j'ai besoin de voir des méthodes ou des champs, J'utiliserais Jad mais bien sûr, il est préférable de se fier à (bon) JavaDoc...

maintenant, quelque part sur SO a été mentionné quelques plug-ins Eclipse, pour trouver dans quel fichier jar une classe est localisée, peut-être qu'ils peuvent faire plus (ie. ce que vous avez demandé).

[MODIFIER] la Référence à fil. Pas de quoi est demandé, mais en quelque sorte lié, donc utile: Java: Comment savoir quel fichier jar utiliser avec un nom de classe donné?

44
répondu PhiLho 2018-10-05 16:37:21

ce que j'utilise personnellement est JD-GUI. Il est gratuit 'decompiler', car il vous permet de voir le code source, les classes et les objets dans les classes, ainsi que de voir la structure des fichiers dans une arborescence à gauche. Cependant, il ne vous permet pas de modifier directement les classes.

site Web de JD-GUI: http://jd.benow.ca /

33
répondu Azulflame 2015-05-19 15:39:19

noms de méthode, champs, etc.

en ajoutant un jar à un projet dans un IDE, vous pouvez habituellement voir les méthodes et les noms de champ, mais pas l'implémentation détaillée. NetBeans peut le faire, éclipse probablement,IntelliJ probablement, etc. Vous pouvez parcourir la structure du pot directement à l'intérieur de L'IDE.

juste le contenu

pour tout ce qui concerne l'affichage du contenu, Vous pouvez utiliser:

  • jar tvf jarfile.jar
  • winzip ou tout zip outil

le code source

pour accéder au code source, vous utiliserez un décompilateur tel que JAD ou l'un de ses frontends ou un autre décompilateur. Si le code est brouillé, alors ...

15
répondu Michael Myers 2009-06-13 19:07:22

Utiliser WinRar . Il ouvrira la structure du dossier pour vous de manière intacte. Permet également l'édition en archive, tout en préservant les chemins.

après tout, un fichier JAR n'est qu'une archive ZIP.

8
répondu M.N 2008-11-26 12:27:01

extension Tom Hawtin réponse, vous pouvez pipe la liste pour filtrer la classe souhaitée ou les fichiers:

jar tf my-fat-jar-file.jar | grep filename

cela devrait fonctionner sur bash / zsh et similars, ou l'eshell d'emacs.

information supplémentaire: https://docs.oracle.com/javase/tutorial/deployment/jar/view.html

8
répondu Jose Miguel 2015-07-29 11:00:36

Si je comprends bien, vous voulez voir non seulement les cours mais aussi les méthodes, les propriétés et ainsi de suite. Le seul outil que je connaisse qui puisse le faire est Eclipse - si vous ajoutez un jar à project classpath, vous pourrez parcourir ses classes avec des méthodes et des propriétés en utilisant l'Explorateur de paquets habituel.

de toute façon, c'est une bonne idée pour un bon outil Java autonome

6
répondu Yoni Roit 2008-12-21 12:49:15

si vous voulez voir ce qu'il y a à l'intérieur, renommez simplement la première option ci-dessous..

  1. F2 & Rename to jarfile.zip //utilisez n'importe quel unzipper...

  2. jar tvf jarfile.jar

  3. jar tf jarfile.jar

6
répondu Some Java Guy 2015-11-13 10:39:01

Jad est klunky et n'est plus entretenu. Je suis passé à "Java Decompiler" , qui a une interface utilisateur et un support pour les nouvelles fonctionnalités linguistiques.

tous les décompileurs que j'ai utilisés, cependant, se retrouve dans le code qu'il ne décompile pas avec succès. Pour ceux-ci, cela aide à comprendre le code Java byte démonté produit par l'outil standard JDK, javap .

4
répondu erickson 2008-11-26 16:31:16

Eh bien, un fichier jar est juste un fichier zip, donc si vous le décompressez (avec votre utilitaire de décompression préféré), vous obtenez tous les fichiers à l'intérieur.

Si vous voulez regarder à l'intérieur de la catégorie fichiers pour voir les méthodes, vous aurez besoin d'un outil pour cela. Comme PhiLho le mentionne, Eclipse est capable de le faire (par défaut), et je pense que la plupart des IDEs Java en sont capables.

3
répondu Jeroen Heijmans 2008-11-26 12:28:21

Dans Eclipse 3.4 faire

  1. faites glisser le fichier jar en question dans un projet Java. Une copie du fichier jar apparaît.
  2. clic Droit sur le fichier jar, et choisissez "Build Path" -> "Ajouter à la Build Path".
  3. fichier Jar est déplacé vers le noeud "bibliothèques référencées", où il peut être ouvert et navigué dans le volet Explorateur de projet.

Si voir le code source est aussi un problème, ouvrez un nouveau question.

pour la navigation au niveau Jar-file (comme un fichier zip) j'utilise 7zip qui fonctionne très bien, et permet de voir et d'éditer des entrées qui est excellent pour le dépannage.

3
répondu Thorbjørn Ravn Andersen 2009-06-13 19:02:37

une façon de faire ceci est d'ouvrir la perspective dans"Package explorer". En faisant cela, vous pouvez voir la structure de votre pot avec les détails de la classe. Pour cela, vérifiez le dossier de la bibliothèque dans votre projet en utilisant package explorer.

Fenêtre>>Show View>>Autres>>Java>>Package Explorer

une autre façon est, vous pouvez utiliser JarPlug comme un plugin eclipse. Cela fonctionne dans eclipse / springsource

http://jar-plug.sourceforge.net/

3
répondu Ziya 2012-11-13 19:10:42

si vous êtes dans windows et en utilisant powershell et que vous recherchez un fichier dans un bocal, vous pouvez faire:

jar -tf .\[JAR_NAME] | where {$_ -match "[FILENAME]"}
3
répondu james 2013-05-03 06:41:25

vous pouvez les ouvrir avec la plupart des utilitaires de décompression de nos jours, puis obtenir quelque chose comme DJ Java Decompiler si vous voulez voir la source.

2
répondu John T 2014-11-19 18:21:53

Bndtools fournit un jar viewer plugin gratuit pour Eclipse.

ajouter le Eclipse update site et n'installer que le visualiseur.

enter image description here

2
répondu aboger 2015-02-19 14:16:22

utilisez unzip -l <jar-file-name>.jar par exemple si vous avez un fichier jar avec le test de nom.jar puis unzip -l test.jar affichera le contenu du fichier jar.

selon le manuel de la commande unzip avec option-L.

archive de la liste de fichiers (format court). Les noms de fichier non compressé les tailles et les dates de modification et les heures des fichiers spécifiés sont imprimé, avec les totaux pour tous les fichiers spécifiés. Si UnZip était compilé avec OS2_EAS définir, l'option-l affiche également des colonnes pour les tailles des attributs étendus (EAs) et des listes de contrôle D'accès (ACLs) de OS/2 stockés. De plus, le commentaire de zipfile et les commentaires de fichiers individuels (s'il y a) sont affichés. Si un fichier a été archivée à partir d'un système de fichiers cas unique (par exemple, L'ancien système de fichiers FAT MS-DOS) et l'option-L a été donnée, le nom de fichier converti en minuscules et préfixé avec un caret (^)

2
répondu Amit Khandelwal 2017-02-21 10:52:56

I prefer Jar Browser , il a une interface simple où vous pouvez parcourir plusieurs pots, et la recherche d'une classe spécifique à travers plusieurs pots simultanément.

1
répondu audiodude 2008-11-26 15:14:10

Eclipse 3.4 JDT

ce n'est pas le moyen le plus rapide parce que vous devez le glisser dans votre éclipse en premier. Mais vous aurez la classe java complète de navigation, même avec decompile activé.

1
répondu Dennis C 2008-11-26 16:42:10

j'ai paramétré l'action par défaut de windows à"ouvrir avec WinZip". Il est donc facile de gérer les pots comme des archives. Vous pouvez même ajouter/supprimer des fichiers manuellement.

1
répondu Chris Nava 2008-12-21 23:29:52

j'utilise JarExplorer ou JarVisualizer .

1
répondu Martin Baeumer 2012-12-07 10:29:50

je pense que Java Decomplier est votre meilleure option que vous pouvez télécharger d'ici: http://jd.benow.ca / Aperçu http://jd.benow.ca/img/screenshot17.png

1
répondu Ziad Alzarka 2016-01-30 13:24:58

vous pouvez essayer JarSpy . Il y a une idée de la version plugin que j'utilise.

0
répondu Dan Dyer 2008-11-26 12:32:05

votre IDE devrait également soutenir ceci. Mon IDE (SlickeEdit) l'appelle une "bibliothèque d'étiquettes."Il suffit d'ajouter une bibliothèque de balises pour le fichier jar, et vous devriez être capable de parcourir les classes et les méthodes de manière hiérarchique.

0
répondu TREE 2008-11-26 18:17:37

sur Mac il y a Jarzilla

0
répondu depsypher 2011-03-21 00:30:38

Vous pouvez essayer de JarNavigator pour afficher et rechercher le contenu d'un fichier jar.

0
répondu Kumaravel 2014-11-19 12:27:03

java -xf some-j.jar décompressera un fichier JAR.

0
répondu MKatleast3 2018-04-18 03:00:23
0
répondu Nolesh 2018-06-01 13:57:18