Je suis très confus. J'ai téléchargé un fichier * .jar en tant que logiciel. Donc, je voudrais extraire le code source pour le regarder
J'ai utilisé la commande jar xf filename.jar
qui a renvoyé deux autres fichiers *.jar
et un fichier *.class
. Je ne peux toujours pas les ouvrir dans le terminal avec des éditeurs de texte standard.
Peut-être que ce n'est pas un logiciel open source? Existe-t-il une alternative pour voir ce qui a été fait ici?
Exécuter "Java -jar fernflower.jar -dgs=true JarToDecompile.jar DecompiledJar
"
C'est ce que font Intelli-J et Android-Studio Decompiler.
Remarque: Fernflower extrait les fichiers .Java
dans un fichier .jar
. Vous pouvez soit décompresser le fichier jar en tant que fichier Zip normal (si votre version de Archive Utility
sur OSX le permet - elle ne le fait pas pour moi sur OSX Sierra mais fonctionne sur El Capitan) OR vous pouvez le faire jar xf DecompiledJar
et ça va l'extraire.
Exemple (commande tout en un - plusieurs commandes séparées par &&
):
Java -jar fernflower.jar -dgs=true JarToDecompile.jar DecompiledJar && cd DecompiledJar && jar xf DecompiledJar.jar && cd ../
Un fichier JAR may contient le code source, mais ne contient généralement que des fichiers de classe. Les fichiers de classe sont normalement destinés à l'exécution, pas à l'extraction de la source.
Vous pouvez décompiler les fichiers de classe en code source, mais le code décompilé ne sera pas aussi utile que le code source d'origine.
S'il s'agit d'une source ouverte, retournez sur le site où vous avez téléchargé les fichiers JAR et recherchez la source. Il peut s'agir de fichiers Zip à télécharger, de fichiers jar à télécharger et d'un type de référentiel, tel que Git, auquel vous pouvez vous connecter avec le bon logiciel.
Solution facile:
Si vous avez Eclipse, ajoutez simplement le fichier jar dans le chemin d'accès aux classes du projet actuel. Vous pouvez voir tous les packages et le code source dans le fichier jar. Vous n'avez pas besoin d'installer et d'utiliser les commandes. Vous aurez une meilleure vue de tous les fichiers