4

複数の Java クラスを 1 つにマージしたいと考えています。ASM のドキュメントとhttp://www.jroller.com/eu/entry/merging_class_methods_with_asmを読みましたが、目標を達成する方法がわかりません。

これに関するより詳細な例はありますか?

ありがとう

4

1 に答える 1

0

Java 1.5 から、実行時にプログラムのバイトコードを操作できるようにするインストルメンテーションと呼ばれる機能があります。さらに、クラス・ローダーが特定のクラスを JVM メモリーにロードしている間に、バイト・コードを操作することもできます。ASM フレームワークは、バイト コード アセンブラを読み取り可能なものに変換し、いくつかのユーティリティを追加して作業を簡素化することにより、バイト コードを簡単に操作するためのツールを提供します。バイトコードの操作は非常に高度な手法であり、実行する前に JVM とバイトコードについて十分に理解する必要があることに注意してください。個人的には、上記のアイデアを実行することをお勧めします。それでもやり続ける場合は、ここでインストルメンテーションについて読むことをお勧めします: http://www.javalobby.org/java/forums/t19309.html そして、ASM または javaassist フレームワークを深く掘り下げるよりも:http://sleeplessinslc.blogspot.co.il/2008/07/java-instrumentation.html Java アシストの方が簡単だと思います。私が助けてくれることを願った

于 2013-01-28T07:31:31.833 に答える