2011-11-15 3 views

答えて

1

彼らはLoad Time Weavingのためのものです。 aj5はjava 5用、ajはjava 1.4用です。

はここにAspectJでサポートされている織りの種類である:

  1. コンパイル時織りが最も簡単な方法です。アプリケーションのソースコードを入手すると、ajcはソースからコンパイルし、織り込まれたクラスファイルを出力として生成します。ウィーバーの呼び出しは、ajcコンパイルプロセスにとって不可欠です。アスペクト自体は、ソース形式またはバイナリ形式である可能性があります。影響を受けるクラスがコンパイルされるためにアスペクトが必要な場合は、コンパイル時に織り込まなければなりません。例えば、クラスにメンバーを追加し、コンパイルされている他のクラスが追加されたメンバーを参照する場合など、アスペクトが必要です。

  2. 既存のクラスファイルとJARファイルを編成するために、ポストコンパイルウィービング(バイナリウィービングとも呼ばれる)が使用されます。コンパイル時の製織の場合と同様に、製織に使用される側面は、ソース形式またはバイナリ形式であってもよく、側面によって織り込まれてもよい。

  3. Load-time weaving (LTW)は、クラスローダーがクラスファイルをロードしてそのクラスをJVMに定義するまで、単純にバイナリウィービングされています。これをサポートするために、実行時環境によって明示的に提供されるか、または「ウィービングエージェント」を介して有効にされる1つ以上の「ウィービングクラスローダー」が必要です。

関連する問題