利用Eclipse编译AspectJ项目

问题
你想要在Eclipse下编译AspectJ项目。

没有使用Eclipse或者Ant?
如果你在编写基于ApsectJ的aspect-oriented程序的时候没有使用Eclipse或者Ant,建议你跳过此章,并从下一章开始学习部署AspectJ程序的常用方法。

解决方案
下载并在Eclipse里安装AspectJ Development Tools (AJDT)插件。

版权声明:任何获得Matrix授权的网站,转载时请务必保留以下作者信息和链接
作者: jerric(作者的blog: http://blog.matrix.org.cn/page/jerric)
原文: http://www.matrix.org.cn/resource/article/44/44423_Eclipse+AspectJ.html
关键字:Eclipse;AspectJ

讨论
和Eclipse项目一样,AspectJ也是一个开源项目,同时它为集成开发环境提供了最丰富的AspectJ插件。你可以在http://www.eclipse.org/ajdt 下载AspectJ的Eclipse插件,并在那找到相应的说明。

最佳的实践经验是下载最新版的AspectJ,以及相应最新的AJDT和支持它的Eclipse。如果你不确定该下载什么,你可以在AJDT的下载页面找到一个兼容性列表,它可以帮助你做选择。

如果要检查AJDT插件是否已正确安装,在Eclipse的菜单里选择File  New  Project…,在New Project对话框里应该有一个ApsectJ项目的选项,如图2-1所示。

Eclipse 3 Mx版本的缺省设置是隐藏所有附加向导。你可以选中Show All Wizards选择框以显示New AspectJ Project的选项。

在New Project对话框中选择AspectJ Project选项,然后点击Next,并且利用接下来的几步来设置一个新的AspectJ项目。
一旦项目向导完成,Eclipse里的工作界面会建议你切换到Java Perspective,并且,如果你是第一次使用这个向导,它会要你确认几个AJDT的引用。推荐使用Java Perspective,并且接受默认的项目参数。完成后你的项目会如图2-2所示。

AJDT 1.1.7及以上版本默认下会自动对你的aspects和java代码进行增量编译;如果你觉得这影响到你的整体开发的效率,你可以关掉这个功能。

在新ApsectJ项目创建的同时,它已被自动编译好了。你也可以点击Build AspectJ Project按钮 ,对项目进行强制编译。


图2-1 创建一个新的AspectJ项目


图2-2 在Eclipse的Java Perspective里显示的AspectJ项目的源代码及jar文件

你的程序应该已经编译好并可以运行了。在此之前,你可以留心一下AJDT对Java Perspective的一些扩展。最显著的是在Outline view里,当你选中一个aspect或者advised类,会有新的区域显示已经应用了建议的地方。更多信息的例子如图2-4和2-5所示。


图2-4 用Outline view查看应用了特定建议的类或aspect


图2-5 利用Outline view查看在一个特定类上应用了哪些建议

AJDT还提供了另一个视图以图形化地显示你的aspects如何应用到你的项目之中。选择Window  Open Perspective  Other…,并选择Aspect Visualization perspective以打开那个视图。这个新视图里会列出你的类里已应用的aspects,如图2-6所示。


图2-6 已选中一个示例项目的AJDT的Aspect Visualization perspective

切换回Java perspective,并且运行你的程序。在Eclipse里运行一个AspectJ程序和运行一个普通的Java程序一样简单。在Java perspective里选择包含public static void main(String[] args)方法的类,然后在主菜单里选择Run  Run As  Java Application。Eclipse会在选中的类里查找并执行main()方法。命令行输出结果会显示在Console view里,如图2-7所示。


图2-7 运行代码5.1时在Console view里输出的结果

AJDT包含的丰富特性和扩展甚至可以写整整一章内容。花点时间看看AJDT所提供的参数和特性,这样当你在使用本书其它代码的时候,你可以迅速掌握哪些对你最有用的特性。

参考
Eclipse and The Eclipse Cookbook中的代码2.9 展示了如何利用Ant进行自动化编译;你可以在http://www.eclipse.org/ajdt 的User Resources: Documentation链接获得AJDT插件完整的用户指南。Borland JBuilder的AspectJ插件可以在http://sourceforge.net/projects/aspectj4jbuildr/ 下载;Sun的NetBeans的AspectJ插件可以在http://sourceforge.net/projects/aspectj4netbeans/ 下载。参考Steve Holzner (O’Reilly) 的Eclipse and The Eclipse Cookbook.
 

你可能感兴趣的:(利用Eclipse编译AspectJ项目)