</question>
<answer>
<para>
- AspectJ 1.1 can weave binary aspects
+ Since the 1.1 release, AspectJ can weave binary aspects
into classes in bytecode form. Hooked up to a class loader,
this can weave class bytecodes after they are read in,
before the
- class is defined by the VM. In the 1.1 release (or soon
- thereafter) we will provide a proof-of-concept class loader,
- but we expect most people will already have a custom
- class loader which they will adapt to invoke our weaver.
+ class is defined by the VM. (This means load-time weaving
+ only works were aspects are not required to compile the pure-java
+ classes. If the aspects are required, then the Java classes
+ have to be compiled with the aspects using the AspectJ compiler.)
+ The AspectJ 1.2 release had the
+ WeavingURLClassLoader, and the 1.2.1 release introduced
+ the aj.bat script for Java 1.4.
+ The AspectJ 5 release introduces much better support for
+ load-time weaving, including declaring concrete aspects
+ in XML files and integrating with Java 5 and BEA JRocket
+ JVM's. See <xref linkend="aspectj5ltw"/>.
</para>
<para>Some have asked about only weaving particular classes
specified at run-time.