2011-10-30 6 views
4

複数のJavaクラスを1つにマージしたいと思っています。私はASMのドキュメントとこれを読んだhttp://www.jroller.com/eu/entry/merging_class_methods_with_asmしかし、私は私の目標を達成する方法を理解できません。実行時に複数のJavaクラスをASMと組み合わせる

さらに詳しい例がありますか? Javaの1.5から

おかげ

+0

これは2つのクラスを一緒にマージする方法ですか?これは意味をなさないかもしれないときにコードを一緒に加えることによって2つのメソッドをマージします。あなたはなぜこれをしたいのか説明できますか? –

+0

1つのタイプのみを管理するために、複数のデータタイプを1つに統合したいと考えています。 – Sergio

+2

実行時にそれらをどのように組み合わせると、管理オーバーヘッドが削減されますか?サポートされていない配備方法がある場合を除いて、複数のソースファイルがあります。あなたはそのようなプログラムをどのようにデバッグしますか? –

答えて

0

実行時にプログラムのバイトコードを操作することができます計装と呼ばれる機能があります。さらに、クラスローダが特定のクラスをJVMメモリにロードする間に、バイトコードを操作することもできます。 ASMフレームワークでは、バイトコード・アセンブラを読み取り可能なものに変換し、作業を簡略化するユーティリティを追加することによって、バイト・コードを簡単に操作するツールを提供します。バイトコードを操作することは非常に進んだテクニックであり、実行する前にJVMとバイトコードについて実際に知る必要があることに注意してください。 私は個人的に上記のアイデアを行うことをお勧めします。まだそれを保存している場合、私はあなたがここで計装について読むことをお勧めします:http://www.javalobby.org/java/forums/t19309.html とASMまたはjavaassistフレームワークへの深い潜入より:http://sleeplessinslc.blogspot.co.il/2008/07/java-instrumentation.html 私はそれを使って作業することをお勧めします簡単です。 私は助けたいと思っています

関連する問題