diff options
author | wisberg <wisberg> | 2005-11-04 09:02:09 +0000 |
---|---|---|
committer | wisberg <wisberg> | 2005-11-04 09:02:09 +0000 |
commit | cea5fc1169f1052878f40da0bdc24fd02b02258a (patch) | |
tree | e5ac95a8ccf2391394de2393f478bd284da8b8e1 /docs | |
parent | 7d4cb8192230085a1b7ea8015a0379198d55e3ab (diff) | |
download | aspectj-cea5fc1169f1052878f40da0bdc24fd02b02258a.tar.gz aspectj-cea5fc1169f1052878f40da0bdc24fd02b02258a.zip |
bug 102479 example for getting messages from ajc programmatically
Diffstat (limited to 'docs')
-rw-r--r-- | docs/devGuideDB/ajc.xml | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/docs/devGuideDB/ajc.xml b/docs/devGuideDB/ajc.xml index 95b096649..ea2cab2da 100644 --- a/docs/devGuideDB/ajc.xml +++ b/docs/devGuideDB/ajc.xml @@ -652,8 +652,29 @@ commands to your environment as needed. <para>To access compiler messages programmatically, use the methods <literal>setHolder(IMessageHolder holder)</literal> and/or <literal>run(String[] args, IMessageHolder holder)</literal>. + <literal>ajc</literal> reports each message to the holder + using <literal>IMessageHolder.handleMessage(..)</literal>. + If you just want to collect the messages, use + <literal>MessageHandler</literal> as your + <literal>IMessageHolder</literal>. + For example, compile and run the following with + <literal>aspectjtools.jar</literal> on the classpath: </para> - + <programlisting> +import org.aspectj.bridge.*; +import org.aspectj.tools.ajc.Main; +import java.util.Arrays; + +public class WrapAjc { + public static void main(String[] args) { + Main compiler = new Main(); + MessageHandler m = new MessageHandler(); + compiler.run(args, m); + IMessage[] ms = m.getMessages(null, true); + System.out.println("messages: " + Arrays.asList(ms)); + } +} + </programlisting> </refsect2> <refsect2> |