À moins d'avoir le code source (que ce soit dans le POT, ou séparément), alors le mieux que vous pouvez faire est d'utiliser un Java decompiler. Selon la façon dont le code a été compilé en premier lieu, cela peut générer du code source, ce qui est sensiblement différent de ce que l'auteur original écrit (bien que fonctionnellement identiques, bien sûr). Par exemple, certains optimiseur options pourraient entraîner des boucles de ré-écrit et variables locales d'être enlevée. Certaines options de débogage pourrait entraîner dans les noms de variables locales sont supprimés, de sorte que le decompiler faudra inventer (de sens) des noms pour eux, etc.
Je voudrais aussi la question de savoir si ce que vous voulez faire est légal. Généralement, si un projet est homologué pour la modification puis son code source sera disponible et vous n'aurez pas besoin de faire ce que vous proposez.
J'ai acheté la licence, mais le support a été minime et manque de documentation. C'est le moins que je puisse faire. Qui n'en est pas plus légal c'est pas légal d'arnaquer les clients en fournissant une moitié de produit et d'aller awol. Ce n'est pas plus légal! Écoutez, je ne suis pas en juger vous - je suis simplement en indiquant un problème que vous pouvez ne pas avoir pensé, c'est tout.
J'ai utilisé le Cavaj decompiler et cela a fonctionné assez bien pour moi. Vous pouvez simplement ouvrir le fichier jar avec n'importe quel programme de décompression comme 7zip, .les fichiers jar sont vraiment juste des fichiers zip. Alors tout ce que vous devez faire est de nourrir les .les fichiers de classe pour Cavaj. L' .les fichiers de classe sont organisées par paquet, com.foo.La barre d'com/foo/Bar.class à l'intérieur de l' .jar
Comme Danny dit, la légalité pourrait être discutable en fonction de la situation. Je n'ai jamais utilisé pour rechercher la source pour une ancienne version d'une application que j'ai écrit, mais n'avait plus la source.
Java est livré avec un libre decompiler. javap Je viens de vérifié javap et il semble qu'il n'affiche que le code compilé de la machine virtuelle s'exécute. Je ne sais pas ce compilé en code Java ressemble, mais cette sorte de me rappelle de l'Assemblée ou de BASE. Cavaj, tout en étant très vieux, il convertit le dos à la plaine de Java. Oh ouais. Désolé, mon mauvais. Ensuite, il y a des tas de logiciels gratuits là-bas. Jad est quelque chose que j'ai eu du succès avec avant. Mon souci avec la Cavaj produit est qu'il prétend seulement être exécuté sur Windows et prétend qu'il n'a pas besoin de Java installée. Cela implique qu'il est originaire du programme, qui pourrait être OK ou non.
À moins d'avoir le code source (que ce soit dans le POT, ou séparément), alors le mieux que vous pouvez faire est d'utiliser un Java decompiler. Selon la façon dont le code a été compilé en premier lieu, cela peut générer du code source, ce qui est sensiblement différent de ce que l'auteur original écrit (bien que fonctionnellement identiques, bien sûr). Par exemple, certains optimiseur options pourraient entraîner des boucles de ré-écrit et variables locales d'être enlevée. Certaines options de débogage pourrait entraîner dans les noms de variables locales sont supprimés, de sorte que le decompiler faudra inventer (de sens) des noms pour eux, etc.
Je voudrais aussi la question de savoir si ce que vous voulez faire est légal. Généralement, si un projet est homologué pour la modification puis son code source sera disponible et vous n'aurez pas besoin de faire ce que vous proposez.
Qui n'en est pas plus légal
c'est pas légal d'arnaquer les clients en fournissant une moitié de produit et d'aller awol.
Ce n'est pas plus légal! Écoutez, je ne suis pas en juger vous - je suis simplement en indiquant un problème que vous pouvez ne pas avoir pensé, c'est tout.
OriginalL'auteur dty
J'ai utilisé le Cavaj decompiler et cela a fonctionné assez bien pour moi. Vous pouvez simplement ouvrir le fichier jar avec n'importe quel programme de décompression comme 7zip, .les fichiers jar sont vraiment juste des fichiers zip. Alors tout ce que vous devez faire est de nourrir les .les fichiers de classe pour Cavaj. L' .les fichiers de classe sont organisées par paquet, com.foo.La barre d'com/foo/Bar.class à l'intérieur de l' .jar
Comme Danny dit, la légalité pourrait être discutable en fonction de la situation. Je n'ai jamais utilisé pour rechercher la source pour une ancienne version d'une application que j'ai écrit, mais n'avait plus la source.
Je viens de vérifié javap et il semble qu'il n'affiche que le code compilé de la machine virtuelle s'exécute. Je ne sais pas ce compilé en code Java ressemble, mais cette sorte de me rappelle de l'Assemblée ou de BASE. Cavaj, tout en étant très vieux, il convertit le dos à la plaine de Java.
Oh ouais. Désolé, mon mauvais. Ensuite, il y a des tas de logiciels gratuits là-bas. Jad est quelque chose que j'ai eu du succès avec avant. Mon souci avec la Cavaj produit est qu'il prétend seulement être exécuté sur Windows et prétend qu'il n'a pas besoin de Java installée. Cela implique qu'il est originaire du programme, qui pourrait être OK ou non.
OriginalL'auteur jonescb