harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Tim Ellison (JIRA)" <j...@apache.org>
Subject [jira] Updated: (HARMONY-2195) How to use aspects for tracing
Date Tue, 29 May 2007 12:30:16 GMT

     [ https://issues.apache.org/jira/browse/HARMONY-2195?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel

Tim Ellison updated HARMONY-2195:

    Component/s:     (was: Classlib)

> How to use aspects for tracing
> ------------------------------
>                 Key: HARMONY-2195
>                 URL: https://issues.apache.org/jira/browse/HARMONY-2195
>             Project: Harmony
>          Issue Type: Improvement
>          Components: Contributions
>            Reporter: Sian January
>            Priority: Trivial
>         Attachments: buildxmlpatch.txt, Tracing.aj
> I'm creating this JIRA to store information and related files for how to use AspectJ
for tracing in the class libraries.  Instructions below for adding tracing to the math module:
> 1. Download AspectJ from http://www.eclipse.org/aspectj/downloads.php
> 2. Copy aspectjrt.jar to /depends/jars/aspectj/
> 3. Copy aspectjtools.jar and aspectjrt.jar to ANT_HOME/lib and if using Eclipse add both
of these to your ant runtime configuration (Window > Preferences > Ant > Runtime
> Add...)
> 4. Edit build file to use iajc* instead of javac and include aspect class files (or apply
the buildxmlpatch.txt to build.xml in the math module)
> 5. Write a tracing aspect (or copy the one attached to modules\math\src\main\java\org\apache\harmony\tracing)
> 6. Re-build the module
> 7. Make sure to add aspectjrt.jar to the runtime classpath of whatever program you are
> * - iajc isn't incremental like javac in ant, it will always do a total rebuild.  Also
if you switch from using iajc back to javac you will need to do a clean before you do a rebuild.

> Please also note that it's not possible to use this kind of tracing for any classes that
are depended on by the AspectJ runtime or there will be errors initializing the classes because
of circular dependencies.  However I think most modules apart from luni should be safe.  Also
it's important to not trace methods that are called (directly or indirectly) by your tracing
methods otherwise you will end up in an endless loop.  

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message