<html><head> | |
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> | |
<title>The AspectJtm Problem Diagnosis Guide</title><link rel="stylesheet" href="aspectj-docs.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.44"><link rel="home" href="index.html" title="The AspectJtm Problem Diagnosis Guide"><link rel="next" href="messages.html" title="Chapter 1. Messages"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">The AspectJ<sup>tm</sup> Problem Diagnosis Guide</th></tr><tr><td width="20%" align="left"> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="messages.html">Next</a></td></tr></table><hr></div><div class="book" id="d0e1"><div class="titlepage"><div><h1 class="title"><a name="d0e1"></a>The AspectJ<sup>tm</sup> Problem Diagnosis Guide</h1></div><div><h3 class="author">the AspectJ Team</h3></div><div><div class="legalnotice"><p>Copyright (c) 2006 IBM Corporation and others. | |
2006 Contributors. | |
All rights reserved. | |
</p></div></div><div><div class="abstract"><p><a name="d0e15"></a><b>Abstract</b></p><p> | |
This guide describes how to configure the AspectJ compiler/weaver to provide | |
information for diagnosing problems in the input programs, the | |
compiler/weaver or its configuration. | |
</p><p> | |
The AspectJ compiler and weaver can provide lots of information for diagnosing | |
problems in building AspectJ programs. For problems in the input program, | |
there are a number of default warning and error messages, as well as many | |
configurable "lint" messages, all of which can be emitted normally, | |
logged using standard facilities, or intercepted programmatically. | |
These are discussed in <a href="messages.html">Messages</a>. Since most errors | |
relate to writing pointcuts incorrectly, there is a section on | |
<a href="pointcuts.html">Debugging Pointcuts</a>. | |
</p><p> | |
For problems with the compiler/weaver itself there are three facilities | |
that enable the AspectJ developers to resolve bugs even when it is | |
too hard to deliver a reproducible test case: | |
<div class="orderedlist"><ol type="1"><li><p><a name="d0e27"></a><a href="trace.html">Tracing</a> can be enabled to track progress up to the time of a failure;</p></li><li><p><a name="d0e31"></a><a href="ajcore.html">AspectJ Core Files</a> can give a relatively complete picture of the state of | |
the world at the time of a failure; and </p></li><li><p><a name="d0e35"></a><a href="ltwdump.html">Dumping classes during load-time weaving</a> is a way to capture both | |
input and output classes during load-time weaving. | |
</p></li></ol></div> | |
</p><p> | |
This guide describes how to configure messages to get the right information | |
and how to configure traces, dumps, and core files. Although the compiler/weaver | |
operates in roughly three modes (from the command-line, embedded in an IDE, | |
and enabled as load-time weaving), the principles are basically the same for | |
all modes. The differences lie in how to set up diagnostics and what | |
information is likely to be relevant. | |
</p></div></div><hr></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt>1. <a href="messages.html">Messages</a></dt><dd><dl><dt><a href="messages.html#messages-introduction">Introduction</a></dt><dd><dl><dt><a href="messages.html#messages-introduction-config">Configuring Messages</a></dt></dl></dd><dt><a href="messages-scenarios.html">Message scenarios</a></dt><dd><dl><dt><a href="messages-scenarios.html#messages-scenarios-ct">Compile-time weaving scenarios</a></dt><dt><a href="messages-scenarios.html#messages-scenarios-ltw">Load-time weaving scenarios</a></dt></dl></dd><dt><a href="messages-xlint.html">Lint messages</a></dt></dl></dd><dt>2. <a href="pointcuts.html">Debugging Pointcuts</a></dt><dd><dl><dt><a href="pointcuts.html#pointcuts-introduction">Introduction</a></dt><dt><a href="pointcuts-debugging.html">Debugging pointcuts</a></dt></dl></dd><dt>3. <a href="ajcore.html">AspectJ Core Files</a></dt><dd><dl><dt><a href="ajcore.html#ajcore-introduction">Introduction</a></dt><dd><dl><dt><a href="ajcore.html#configuration">Configuring dump files</a></dt><dt><a href="ajcore.html#ajcore-examples">AJCore File Examples</a></dt></dl></dd></dl></dd><dt>4. <a href="trace.html">Tracing</a></dt><dd><dl><dt><a href="trace.html#trace-introduction">Introduction</a></dt><dd><dl><dt><a href="trace.html#trace-configuration">Configuring Tracing</a></dt><dt><a href="trace.html#trace-examples">Examples</a></dt></dl></dd></dl></dd><dt>5. <a href="ltwdump.html">Dumping classes during load-time weaving</a></dt><dd><dl><dt><a href="ltwdump.html#ltwdump-introduction">Introduction</a></dt><dd><dl><dt><a href="ltwdump.html#ltw-examples">Configuring bytecode dumping in load-time weaving</a></dt><dt><a href="ltwdump.html#ltwdump-examples">LTW Dump Examples</a></dt></dl></dd></dl></dd></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="messages.html">Next</a></td></tr><tr><td width="40%" align="left"> </td><td width="20%" align="center"> </td><td width="40%" align="right"> Chapter 1. Messages</td></tr></table></div></body></html> |