Overview | The theme of this release is Aspects Everywhere. Programmers using AJDT should be able to see the effects of their aspects wherever and whenever they apply. We have particularly focused on ensuring that the IDE treats intertype declarations more like regular declarations. |
| |
JDT Weaving | Through the use of Equinox Aspects, AJDT is able to weave into Eclipse and hook in to existing functionality that was not exposed before. For more information on what capabilities the JDT Weaving plugin provides AJDT, see the wiki. And see here for more information on how the plugin is implemented. |
|
|
ITD aware content assist (*.aj files only) |
Intertype declared methods, fields, and constructors are now available in content assist. Similarly, appropriately scoped declarations from declare parent super types are also available in content assist. For example, in the following screen shots, content assist shows the
Content assist in AJDT 1.6.2 includes ITDs. However, this was not possible in AJDT 1.6.1.
Content assist in AJDT 1.6.1 does not include ITDs. Currently, this functionality is only available in AJ Editors for *.aj files. Also, the project is required to have had a successful build. Adding this functionality to *.java files is a top priority for the next AJDT release. |
|
|
ITD aware reconciling (*.aj and *.java) |
Intertype declaration aware reconciling and eager parsing are now available in both AJ and Java editors. This means that ITD references in a compilation unit will no longer show spurious error bars. Furthermore, AJ editors now provide the same kind of eager error detection as you type that is available in Java editors.
Reconciling in AJDT 1.6.2 and ITD references are OK
Reconciling in AJDT 1.6.1 and ITD references are marked as errors in Java files |
|
|
ITD aware super-type hierarchies |
The type hierarchy view now shows types inserted into the hierarchy through a declare parents declaration.
Super-type hierarchies in AJDT 1.6.2 include ITDs
Super-type hierarchies in AJDT 1.6.1 do not include ITDs Note that in this release, AJDT can only show super types that have been declared by declare parents. The sub-type hierarchy is not yet ITD aware. |
|
|
Aspects in Open-Type dialogs |
The open type dialog now includes aspect types. ![]() |
|
|
Java search for aspects, named pointcuts, and advice |
Java search now includes aspects, named pointcuts, and advice. In order to search for a named pointcut, use the search dialog and select Method:
Advice can similarly be searched for by entering the kind of advice (before, after, or around), selecting Method, and Declarations: Aspect references and declarations now appear when types are searched for. |
|
|
Refactoring | Standard rename, move, and copy/paste refactorings can now be applied to aspect compilation units (*.aj files) without errors or uncaught exceptions. |
|
|
Bug fixes |
Many bug long standing bugs have finally been addressed due to the capabilities provided through JDT Weaving:
|
|
|
Thanks! |
Thanks to all the AJDT users who provided valuable insight into how they are using AJDT and also for reporting bugs particularly with JDT Weaving installation. And a special thanks goes out to Martin Lippert and Heiko Seeberger on the Equinox Aspects team for helping out with weaving in OSGi. |
|
|
Previous Releases | See here for information on the new features in AJDT 1.6.1. |