アプリケーションがカスタムローダーを使用してインストルメントクラスファイルをロードする前にインストルメントクラスファイルを作成した場合に発生する可能性のある問題に誰もが光を当てることができますか?同じことを行うJavaアプリケーションを作成しました。
バイト配列の形式でクラスファイルを読み取ります。次に、asmライブラリを使用して計測し、カスタムクラスローダーを介してロードします。
はいの場合、この手順は失敗する傾向がありますか?
アプリケーションがカスタムローダーを使用してインストルメントクラスファイルをロードする前にインストルメントクラスファイルを作成した場合に発生する可能性のある問題に誰もが光を当てることができますか?同じことを行うJavaアプリケーションを作成しました。
バイト配列の形式でクラスファイルを読み取ります。次に、asmライブラリを使用して計測し、カスタムクラスローダーを介してロードします。
はいの場合、この手順は失敗する傾向がありますか?
これに関する主な問題は、アプリケーションをJVMに結び付けることです。Javaコミュニティは、JLSとJVMを分離するために非常に熱心に取り組んでいるため、理論的にはJavaをJVMなしで使用できます。また、JavaがJVMなしで実際に使用されるプラットフォームはAndroidとGWTの2つです。Javaバイトコードを理解しないプラットフォームで実行する必要がない場合は、問題ありません。
静的なバイトコード操作は完全に問題ないことに注意してください。JVMバイトコードを操作した後、Dalvikバイトコードにクロスコンパイルできます。ただし、実行時にこれを実行する場合は、アプリケーションにJVMからDalvikへのクロスコンパイラを含める必要があります… Dalvik VMは同じ方法で動的バイトコードの読み込みをサポートしていないため、それでも機能しません。 JVMはそうします。