Eclipse 3.2 Java开发工具的新特性

Eclipse是一个流行的针对Java编程的集成开发环境(IDE)。它还可以用作编写其他语言(比如C++和Ruby)的环境,合并各种种类工具的框架,以及创建桌面或服务器应用程序的富客户端平台。如今,Eclipse开源社区拥有数十个项目,其范围从商务智能到社会网络等各个方面。Eclipse同时也是管理这些项目的非赢利性组织的名称。(而且,尽管我相当肯定它并非地板蜡,还是存在Eclipse汽车、足球队和口香糖。)

Eclipse version 3.2在Eclipse Callisto 发行历史上具有里程碑的意义:于2006年6月30日同时发布了10个Eclipse项目。本文将集中探讨Eclipse IDE,特别是其Java 开发工具 (JDT)。

JDT构成

JDT的历史可以追溯到1996年左右使用Smalltalk编写的Visual Age for Java(VAJ)。在VAJ中,一切内容都会在输入时进行编译,并在内存中完全解析。这种设计的可伸缩性不是很好,难于扩展,重建文件也有一定的困难。

1999年,该IDE团队开始开发Visual Age Micro Edition(VAME)。这个工具完全以Java编写,并使用标准Widget 工具箱(SWT)来实现其用户接口。当时的VAME将目标定为嵌入式空间中的开发与应用。为此,它使用了标准的Java VM,并把工作区保存在文件系统中。然而,文件和文件夹名称都是一些无法读取的UUID。

与VAJ提供的编译器相比,VAME的增量式编译器快了近10倍。该模型是基于状态构建的(与目前的Eclipse相反,Eclipse是基于源代码的)。VAME有自己的存储库系统Rapier,并且可以使用插件对其进行扩展。

VAME实际上并没有在社区中流行开来,但是它包含了大量优秀的思路,开发人员在接下来的Eclipse项目中延用了这些思路。2001年,Eclipse 1.0发布。它被描述为“一种通用的IDE,并不特别针对于什么内容”。一开始,Eclipse和JDT都被构建为其他开发工具使用的平台。工作区保存在磁盘上,并对其他工作区开放。Eclipse 1.0集成了CVS,而没有使用专用的存储库。

Eclipse与其先行者之间有一个重要的区别:它是开源的。其用户社区以爆炸式的速度增长,并可独立维持。Eclipse 3.2的大部分新的和改进功能都源自eclipse用户提出的增强要求。自从3.1版本以来,已经有超过30,000个修复和增强的要求得到了解决。由于要把全部这些要求都过一遍需要很长时间,下面我们就重点讲述其中一些对于大多数Java开发人员特别重要的要求。

Eclipse编译器

JDT更为强大的功能之一即是它内置的增量式Java编译器,这个编译器与javac完全兼容。尽管可以让Eclipse使用Ant和javac,甚至可以让问题标志显示在IDE中(此为3.2版本中的新功能),但是Eclipse编译器可以提供更好的诊断技术和更快的周转周期。

JDT编译器原本是为VAME而编写的,后针对Eclipse进行了修改。这个编译器构建在开发人员称之为“编译的3大规则”(模仿了阿西莫夫的机器人3大定律)之上:

·正确性:编译器不能伤害源程序。

·高效性:编译器必须快速,除非速度与规则1发生冲突。

·友好性:编译器必须帮助用户纠正编程错误,只要这类帮助不与规则1和规则2冲突。

·正确性:设计Java编译器时,不仅必须遵循相应的规范,而且必须领会该规范的“精神”,仅仅考虑正确性是不行的。因此,JDT开发人员多年来辛勤工作,以便与其他编译器的功能保持一致,其中包括Sun的编译器。在Eclipse 3.2中,仅针对正确性的检查就超过了15,000次单元测试(相比之下,VAJ中根本没有进行单元测试)。

·高效性:数千个项目和数百万行代码往往是很平常的事情。这意味着要解决很多问题,例如内存使用必须是可预测的并加以分级。Eclipse 3.2继续对此进行积极的优化。例如,开发人员可以重写一个流程图以使用位操作,结果位操作的时间消耗从20%降到了4%。

·友好性:报告错误是一门艺术。仅仅使用行号还不够。二级错误被最小化。例如,如果一个文件内漏掉了一个分号,它不会影响到与它相关的其他文件。改进后的静态分析功能有助于发现错误模式。另外,Eclipse还可以对Javadoc进行正确性检查。

就3.2版本来说,Eclipse编译器是与Java SE 6.0兼容的。没错,Eclipse支持Java 6类和StackMapTable属性(甚至在Java 6发布之前)。另外,该编译器还提供大量新的诊断功能,有助于在运行代码之前发现其中的错误。与3.2版本的编译器(提供了45种诊断功能)相比,VAJ仅提供了3类诊断功能。最新的一些诊断功能包括对以下内容的检测:

·使用显然是null的变量。

·不必要的null检查。

·对方法参数的偶然赋值。

·通过让之前的大小写状态失效的方式,切换大小写输入。

·使用非一般(原始)类型。

·未使用的标签。

·不必要的-NLS

在默认情况下,大多数这些功能都处于关闭状态。当然,还可以使用注释把它们设置为关闭状态。

从3.2版本开始,如果想在Eclipse外部使用Eclipse编译器,您可以单独下载该版本。它的命令行参数与javac兼容,并且下载文件大小仅有1MB左右。既然Eclipse编译器是开源的,所以许多其它项目(例如Apache Tomcat)就可以把它绑定到它们自己的软件中。

时间: 2024-11-03 21:19:10

Eclipse 3.2 Java开发工具的新特性的相关文章

扩展Eclipse的Java开发工具

由于 Eclipse 具有功能强大的 Java 开发环境,这使它获得了人们的一致好评.这个 Java 开发环境(再加上团队环境和其它基础功能)使 Eclipse 成为引人注目的集成开发环境,对 Java 开发人员来说,这是个好消息.而且,Eclipse 还是一个开放源码项目.但真正使人们对 Eclipse 感到兴奋的是它提供了扩展的可能性. 许多基于 Eclipse 的商用产品都显示出这种提供集成产品的方法的实际意义.例如,IBM WebSphere Application Developer

JAVA开发工具eclipse中@author怎么改

1:JAVA开发工具eclipse中@author怎么改,开发的时候为了注明版权信息. 用eclipse开发工具默认的是系统用户,那么怎么修改呢 示例如图所示 首先打开Eclipse--->然后在上面的标题栏找到window--->然后找到preferences 如图 找到preferences->java->code style->code template如下图       然后在写程序界面再写文档注释时,开发者已经发生改变了.然后就可以尽情的开发了

十四种Java开发工具点评

在计算机开发语言的历史中,从来没有哪种语言象Java那样受到如此众多厂商的支持,有如此多的开发工具,Java菜鸟们如初入大观园的刘姥姥,看花了眼,不知该何种选择.的确,这些工具各有所长,都没有绝对完美的,就算是老鸟也很难做出选择.在本文中我简要介绍了常见的十四种Java开发工具的特点,管中窥"器",希望能对大家有所帮助. 1.JDK (Java Development Kit) 2.Java Workshop 3.NetBeans 与Sun Java Studio 5 4.Borlan

[JAVA]十四种Java开发工具点评_JSP编程

  在计算机开发语言的历史中,从来没有哪种语言象Java那样受到如此众多厂商的支持,有如此多的开发工具,Java菜鸟们如初入大观园的刘姥姥,看花了眼,不知该何种选择.的确,这些工具各有所长,都没有绝对完美的,就算是老鸟也很难做出选择.在本文中我简要介绍了常见的十四种Java开发工具的特点,管中窥"器",希望能对大家有所帮助. 1.JDK (Java Development Kit) 2.Java Workshop 3.NetBeans 与Sun Java Studio 5 4.Borl

Java开发工具IntelliJ IDEA单元测试和代码覆盖率图解

原文 http://www.cnblogs.com/xiongmaopanda/p/3314660.html Java开发工具IntelliJ IDEA使用教程:单元测试和代码覆盖率 本文将展示如何使用IntelliJ IDEA开发单元测试和分析覆盖率. 1 创建新的项目 创建名为UnitTestingApp的Java项目. 2 创建一个类进行测试 创建一个新的类用于测试. 添加方法sayHello返回Hello字符串. 3 创建测试源根目录 为了不将测试添加到源中,用户可以创建根目录.在这种情

《Java程序员面试秘笈》—— 面试题4 列出你熟悉的Java开发工具

面试题4 列出你熟悉的Java开发工具 考点:该问题一般会在面试时出现,主要是看求职者是否熟悉常用的Java开发工具,因为一个项目开发团队会使用一种固定的开发工具,只有求职者能够熟练使用该工具,才能够快速融入该团队. 出现频率: [面试题解析]Java作为一种跨平台开发语言,由于其开源性,各个公司和社区组织,都推出了各自的Java开发工具,这也是Java开发体系同微软的开发体系的区别之一.不同的项目开发团队一般都有自己熟悉的开发工具或者开发环境,求职者只有熟练使用不同的开发工具,才能适应项目开发

Java Tools 0.44发布 轻量级的Java开发工具

Java Tools 0.44该版本编辑器已得到更新. Java Tools是一个轻量级的Java开发工具,支持创建.编译.执行和调试Java的应用程序或者是http://www.aliyun.com/zixun/aggregation/5541.html">Applet小应用程序.该工具还提供直接点击来访问Java命令.文档.目录和文件.包含一个内置的文本编辑器和图形界面的调试器. 下载地址:http://sourceforge.net/projects/fieldbird/files/

[个人原创]JAVA 开发工具Jcreator使用技巧总结

技巧|原创    作者:Dazern   日期:2005.3.24晚   学JAVA时间也不短了,可总没有一点自己原创的东西,今天就以写IDE开发工具的使用技巧作为我原创的开始吧,希望大家能喜欢这篇文章,也希望鄙文能对广大初学JAVA的朋友有一点帮助!在使用JCRETOR过程中,自己摸索出了一点点使用技巧,在这里供广大和我一样的初学者参考!  技巧1: 建立空项目进行JAVA编程:  在进行编程的时候最好首先建立一个空项目,然后在这个空项目里,编辑自己的JAVA程序:其实这是一个很好的习惯,你可

Java开发工具配置 UltraEdit

确定你的jdk环境变量配置是正确的.对于java初学者来说,编译和运行java程序是一件很头疼的东西.显然,在命令方式下编译和运行java程序用久了,确实是很麻烦,而我们又不想使用大型的开发工具时,UltraEdit是一个不错的选择,很多初学者都是用它来编写java源文件的,可以高亮度显示关键字.1.关键字高亮度显示. 打开UltraEdit->视图->高亮显示类型->java; 此时在UltraEdit输入java程序时,关键字和java包下的类可以高亮度显示, 还有注释也是啊,如果你