From: wisberg Date: Wed, 9 Apr 2003 16:23:53 +0000 (+0000) Subject: minor new entries and 1.1final massaging X-Git-Tag: V1_1_0_RC2~193 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=0fd1e4e3bc99a6abc664801844a11f5c21adb7e4;p=aspectj.git minor new entries and 1.1final massaging --- diff --git a/docs/faq/faq.xml b/docs/faq/faq.xml index edb034be0..e07f4b42b 100644 --- a/docs/faq/faq.xml +++ b/docs/faq/faq.xml @@ -23,15 +23,12 @@ 2003 Contributors. All rights reserved. - Last updated March 3, 2003. + Last updated April 9, 2003. For a list of recently-updated FAQ entries, see - AspectJ 1.1 is currently in development, and - some answers may change after it is released; - for more information, see the README - included with the AspectJ 1.1 distribution. + This FAQ covers AspectJ versions 1.0 and 1.1. @@ -215,11 +212,12 @@ The latest release is 1.0.6 which can be downloaded from the 1.0 AspectJ download page. - The current release train is 1.1, - which can be downloaded from the - AspectJ home page. - This development is focused on supporting applications, - improving performance of the 1.1 compiler, + To download the current source tree from the + AspectJ project, + see + . + Development is focused on supporting applications, + improving quality and performance, enhancing integration with IDE's, and building the next generations of the language. @@ -2366,9 +2364,9 @@ class Test extends Super implements I { + xreflabel="Q:I want advice to run at two join points, but it doesn't run at all."> - I want advice to run at two pointcuts, but it doesn't run at all. What gives? + I want advice to run at two join points, but it doesn't run at all. What gives? @@ -2735,6 +2733,11 @@ aspect A { + ajc can use more memory than a javac + compile of the corresponding pure-java sources when aspects + are added to the mix. You'll need to increase the memory + available. + The command ajc is actually a script that launches a Java virtual machine with the correct classpath. You should make a copy of this script, rename it, and then edit it. @@ -2742,6 +2745,13 @@ aspect A { might try -Xmx128M or even -Xmx256M. + When running under Ant, give Ant more memory or + use the fork fork option together with + the Xmaxmem option. + + When running under an IDE, look to the documentation + for the IDE to determine how to increase available memory. + @@ -2755,11 +2765,10 @@ aspect A { ajc 1.0 does not currently support incremental - compilation, but we are working on this for the 1.1 release. - - As a limited workaround, many build systems enable you to avoid - doing a compile if no sources have changed. (See, e.g., Ant's - "uptodate" task.) + compilation, but the 1.1 release does. It may still recompile + files that have not changed, if they are affected by aspects + in particular ways, but the files compiled should be fewer + and result in faster compiles. @@ -2846,6 +2855,21 @@ vmparam -Xmx384m + + + + When I run, I get a ClassNotFound message for NoAspectBoundException. + + + + This is what happens when aspectjrt.jar classes + are not on the runtime classpath. Add the jar to the classpath and + try again. + + + + @@ -2854,7 +2878,7 @@ vmparam -Xmx384m - Unless you are using the ajdb debugger, + In 1.0, unless you are using the ajdb debugger, stack traces may have synthetic methods in the stack, and the line numbers may not track your source code. The @@ -2862,6 +2886,10 @@ vmparam -Xmx384m discusses how to interpret stack at the end of the section on the ajc compiler. + In 1.1, line numbers should work correctly. + The only difference from a normal stack might be the addition + of extra stack frames for call-backs. + @@ -2919,15 +2947,15 @@ vmparam -Xmx384m + xreflabel="Q:ajc 1.0 complains that it can't find javac. What's wrong?"> - ajc complains that it can't find + ajc 1.0 complains that it can't find javac. What's wrong? - ajc does not try to locate + ajc 1.0 does not try to locate javac in your path: it uses the javac classes directly. In JDK 1.2 and 1.3 these classes are found in tools.jar (in the @@ -2993,8 +3021,8 @@ vmparam -Xmx384m - I'm reading the code generated by ajc + xreflabel="Q:I'm reading the code generated by ajc 1.0 in -preprocess mode, and it seems like it would not work."> + I'm reading the code generated by ajc 1.0 in -preprocess mode, and it seems like it would not work (or "like it works this way"). @@ -3253,18 +3281,18 @@ vmparam -Xmx384m - Not now, but it should be possible soon. + AspectJ 1.1 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 final 1.1 release, - we hope to document a small class loader as a proof-of-concept, + 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. - Some have asked about only weaving classes specified - at run-time. + Some have asked about only weaving particular classes + specified at run-time. Aspects should work across an entire namespace, and problems will likely result from weaving some classes but not others. Also, it's confusing to @@ -3378,6 +3406,10 @@ vmparam -Xmx384m + AspectJ 1.0 source code is available in an archive available + with the 1.0 downloads. It contains instructions for building + from sources. + AspectJ 1.1 source code is available through CVS using the CVS Root dev.eclipse.org:/home/technology. For more information on accessing the CVS tree at eclipse.org, see the documentation @@ -3884,25 +3916,12 @@ vmparam -Xmx384m - The FAQ has been updated to reflect the move to eclipse.org; - but some answers apply to the released 1.0 version - rather than the 1.1 version in development. - Entries changes to reflect the move are not listed here. - Other entries changed since the earlier November 26 version: + The FAQ has been updated to reflect the move + to eclipse.org and changes in the 1.1 version. + Entries changed since the earlier March 3, 2003 version: - - - - - - - - - - - - - + + @@ -3997,8 +4016,8 @@ vmparam -Xmx384m - Bytecode weaving is scheduled for AspectJ 1.1. We believe it - will work as described in an email to the users list by Jim Hugugin: + Bytecode weaving is in AspectJ 1.1. We believe it + works as described in an email to the users list by Jim Hugugin: The AspectJ language was designed to support weaving at many different times: @@ -4018,6 +4037,8 @@ vmparam -Xmx384m If you have an application for using aspects and bytecode, please let the AspectJ team know of your requirements. + We expect to have a demonstration classloader available in + the 1.1 release or soon thereafter.