2009-07-10 11 views
3

Utilisation de javap Je peux désassembler une classe Java en code octet. Si je veux exécuter ce code octet, ou une version modifiée de celui-ci, comment puis-je le faire? S'il vous plaît, épargnez-moi les réponses «ne vous embêtez pas» car je le fais pour des raisons pédagogiques. J'ai recherché sur Google d'autres questions sur Stack Overflow, mais je n'ai pas trouvé de réponse.Compilation Java Bytecode

+2

Voulez-vous le recompiler? Vous pouvez déjà l'exécuter. Voulez-vous dire que vous voulez interpréter les mnémoniques directement? –

+2

Cette question n'a pas de sens. Un code Java/is/byte. javap est généralement utilisé pour se démonter en un ensemble lisible par l'homme. –

Répondre

1

Utilisez ClassLoader.defineClass() avec un chargeur de classe personnalisé. La page Javadoc fournit un exemple de presque exactement ce que vous voulez faire.

7

Peut-être que Jasmin est ce que vous cherchez.

0

Vous pouvez utiliser un désassembleur java pour produire du code Java, vous pouvez compiler (peut-être avec une fixation du code à la main)

Vous pouvez ensuite modifier le code et recompiler.

Questions connexes