ajdt new features
aspectJ development tools subproject

Last updated: November 17, 2005

This page gives details of the latest new features added to the development builds of AJDT. If you find any problems with these new features please raise a bug, or for further discussion or suggestions please visit the AJDT newsgroup (web interface - first request a password if you don't have one).

November 30, 2005: Updated AspectJ Compiler

The AspectJ build included in AJDT has been updated in the following development builds:
1.2.1.20051130152622 for Eclipse 3.0
1.3.0.20051130095036 for Eclipse 3.1

The timestamp of the included AspectJ 5 build is 20051130133549. See the list of AspectJ bugs fixed in this build since yesterdays update. This build also includes further work for aspectj bug 116679.

November 29, 2005: Updated AspectJ Compiler

The AspectJ build included in AJDT has been updated in the following development builds:
1.2.1.20051129174701 for Eclipse 3.0
1.3.0.20051129121844 for Eclipse 3.1

The timestamp of the included AspectJ 5 build is 20051129161753. See the list of AspectJ bugs fixed in this build since last weeks update.

November 24, 2005: Updated AspectJ Compiler

The AspectJ build included in AJDT has been updated in the following development builds:
1.2.1.20051124105700 for Eclipse 3.0
1.3.0.20051124045634 for Eclipse 3.1

The timestamp of the included AspectJ 5 build is 20051124084452. See the list of AspectJ bugs fixed in this build since M5.

November 17, 2005: AspectJ 5 M5

AJDT now includes AspectJ 5 M5 as of the following development builds:
1.3.0.20051117105200 for Eclipse 3.2M3
1.3.0.20051116143457 for Eclipse 3.1
1.2.1.20051116165827 for Eclipse 3.0

See the complete list of resolved issues since M4.

November 9, 2005: Load-time Weaving in AJDT

AJDT now contains support for load-time weaving in both 1.2.1 and 1.3.0. We have also created an animated demo to demonstrate this new feature. See the demos page for details.

Screenshot showing the load-time weaving launch configuration

November 8, 2005: Updated AspectJ Compiler and single JAR files

The AspectJ build included in AJDT has been updated in the following development builds:
1.2.1.20051108115442 for Eclipse 3.0
1.3.0.20051107165911 for Eclipse 3.1

The timestamp of the included AspectJ 5 build is 20051107153637. See the list of AspectJ bugs fixed in this build since M4.

The packaging of AJDT has also changed recently in that most of the AJDT plug-ins are now single JAR files, instead of a directory containing many files. This should improve install time and reduce disk usage. The plug-ins that provide AspectJ have not been converted - that will be considered later.

October 31, 2005: Accessibility Review

AJDT 1.3 is now accessibility compliant after undergoing a full review against the IBM accessibility checklist. We found and fixed various problems. These fixes include some new icons, a new 'patterns' palette in the Visualiser and some changes to the key sequences for AJDT commands.

See the completed checklist.

If you think you have found an accessibility related bug please raise a bug with "[Accessibility]" at the start of the summary.

October 11, 2005: AspectJ 5 M4

AJDT now includes AspectJ 5 M4 as of the following development builds:
1.3.0.20051011134207 for Eclipse 3.1
1.2.1.20051008130634 for Eclipse 3.0

See the complete list of resolved issues since M3.

The build and packaging process has also changed in this build, so look out for any problems. The only noticeable change should be that the source code zip files have been moved out from each plug-in, into a separate org.eclipse.ajdt.source plug-in.

October 3, 2005: Improved internationalization support & call for help!

We have made sure that all end-user messages in AJDT are stored in properties files instead of being hardcoded. This allows AJDT to be translated to other languages.

This is where you come in! If English is not your native language and you would like to see an AJDT translation pack for your language, please consider contributing some translated messages. There are quite a number of messages involved, but if you'd like to take a look, we've collected them together in one file: messages.zip. If you plan on working on a particular language, please post to the ajdt-dev mailing list, to avoid any duplication of effort. Also post there if you have any questions about the process.

The AspectJ build in AJDT has also been updated to a level of 200509301030, fixing these bugs.

September 26, 2005: Crosscutting Comparison view

This feature has been in the development builds of AJDT 1.2.1 and 1.3 for a little while, but in case you missed it or are unsure how to use it we've created an animated demo available from the AJDT demos page.

  • The goal of this new functionality is to answer the "What's changed?" question in relation to the aspect-oriented structure of your application. Say you make a release of your project and then you do some refactoring such as renaming some methods, adding new methods, optimizing pointcuts etc. The advice in your project may now be matching in different places (or in additional, or fewer places) but in anything other than very small projects it would be hard to spot this purely from the editor markers, Cross References view, and Visualiser view offered by AJDT. These views show you the current state of the crosscutting but not how it has changed -- this is where the Crosscutting Comparison view comes in.

    screenshot showing the Crosscutting Comparison view

September 21, 2005: Updated AspectJ Compiler and new weaver plugin

The AspectJ build included in AJDT has been updated in the following development builds:
1.2.1.20050921121359 for Eclipse 3.0
1.3.0.20050921124737 for Eclipse 3.1

The timestamp of the included AspectJ 5 build is 20050919101948. See the list of AspectJ bugs fixed in this build since last week's update.

The compiler in this release includes further enhancements to ensure it can better handle any 1.2.1 built aspects that it encounters (maybe from old aspect libraries). These changes will require any code built with a previous version of AspectJ 1.5.0 to be rebuilt with this version.

Another change in this build is the creation of a new org.aspectj.weaver plugin, which separates the AspectJ weaver classes from the org.aspectj.ajde plugin. This should be a largely internal change, but if you are referring directly to the ajde.jar file (from an Ant build file for example) you will need to add aspectjweaver.jar from the org.aspectj.weaver plugin.

September 20, 2005: Updated New Aspect Wizard

A new version of the New Aspect wizard is included as of the following development builds:
1.2.1.20050919172634 for Eclipse 3.0
1.3.0.20050916181211 for Eclipse 3.1

  • The New Aspect wizard now more closely matches the appearance and functionality of the current version of the New Class wizard. In addition to supporting the modifiers and extra instantiation options applicable to aspects, code completion is available for package names, and when extending an abstract aspect, stubs can be created for any inherited abstract pointcuts.
    screenshot showing the New Aspect wizard
  • The comments generated and formatting used for new aspects matches the Eclipse settings for new classes - for example on Eclipse 3.1 the default is not to generate comments.
    screenshot showing a generated aspect

September 12, 2005: Updated AspectJ Compiler

The AspectJ build included in AJDT has been updated in the following development builds:
1.2.1.20050912170252 for Eclipse 3.0
1.3.0.20050912140848 for Eclipse 3.1

The timestamp of the included AspectJ 5 build is 20050912122907. See the list of AspectJ bugs fixed in this build since M3a.

September 12, 2005: Relationship Filter for Cross References View
This was added a while ago, but in case you missed it, it is available in recent development builds of 1.2.1 for Eclipse 3.0 and 1.3.0 for Eclipse 3.1. See the download page to obtain the latest builds.

  • Cross References View (enhancement 95724)
    A new 'Filters...' button has been added to the Cross References view menu which can be accessed via the drop down toggle button on the toolbar or by pressing the key combination Ctrl + F10.
    Screenshot showing the Cross References view menu

    This presents a dialog containing the various types of relationship which can be excluded from the view.
    Screenshot showing the Cross References filter dialog

    Checking relationships in the dialog and clicking OK will see any relationships of this type filtered from the view.
    Screenshot showing the filtered Cross References view

  • Cross References In-place View (Ctrl+Alt+X)
    The same functionality is available in the quick form of the Cross References view which appears over the editor. The filters applied to each view are independent of each another.
    Screenshot showing the Cross References in-place view menu

September 6, 2005: Navigation and source hover support for pointcuts
Available in development builds: 1.2.1.20050905225434 for Eclipse 3.0 and 1.3.0.20050905154239 for Eclipse 3.1 or later. See the download page to obtain the latest builds.

This is really 3 features in 1:

  • F3 "open declaration" action for pointcuts (enhancement 107582)
    If you have an aspect open in the AspectJ editor, you can now position the cursor on the use of a named pointcut, either in some advice or in the definition of another pointcut, and then press F3 (or whatever key you have assigned to the "Open Declaration" action) to jump to the definition of that pointcut.

  • Control-click hyperlink navigation for pointcuts (enhancement 108341)
    You can also hold down the control key and mouse over the use of named pointcuts, which now appear as hyperlinks, so that you can click to navigate to the pointcut definition. Note that the implementation of this hyperlink feature uses Eclipse 3.1 API and so is not available on AJDT 1.2.1 for Eclipse 3.0.
    Screenshot showing a control-click hyperlink

  • Source hover for pointcuts (enhancement 108730)
    As an alternative of navigating to a pointcut's definition, you can also hover over the use of the pointcut, and the source code for it will appear as a tooltip.
    Screenshot showing a pointcut source hover

There may be some limited cases where the referenced pointcut cannot be resolved. Please raise a bug if you find any, or if anything else goes wrong.