3.1 版新增内容

本文档包含自从发行版 3.0 以来对 Eclipse 发行版 3.1 的 Eclipse 平台所作的一些更有意义或更重要的更改的描述。本文档分为下列各节:


显著提高了性能

与 R3.0 发行版相比,显著而全面地提高了性能。

我们还添加了能够在工作台运行时连续不断地监视性能的调试支持,并已经使普遍基准测试成为标准测试套件的一部分。每次执行构建后,这些测试的结果与下载页面断开了链接。以下是一个(部分)输出示例:

性能示例图


支持双向文本

在整个平台内扩展了对双向语言(BIDI)的支持。可以从命令行配置窗口布局方向,并且可以根据语言环境推断合适的缺省方向。注意,SWT 只有在 Windows 上才全面支持 BIDI。

镜像的 Eclipse 透视图的屏幕快照


新的撤销/重做 API

应用程序现在可以使用 org.eclipse.core.commands.operations 中的 API 来访问平台可撤销操作历史。IUndoableOperation 为可以撤销和重做的操作定义了接口。视图和编辑器可以使用 org.eclipse.ui.operations 中提供的 UndoActionHandler 和 RedoActionHandler 来提供对撤销和重做支持的访问。


过滤首选项和属性

现在,“首选项”和“属性”对话框提供了一个可用来进行页面过滤的字段,该字段可以将显示的页面过滤为只包括名称或关键字与指定前缀相匹配的页面。以下示例显示了关键字“tag”的匹配项。

新的首选项对话框的屏幕快照


浏览首选项和属性

对链接首选项和属性页面的常规支持允许包含相关设置的页面相互引用和提供对其它页面的快速访问。通过与页面右上角的 Web 风格的前进和后退导航器结合,现在,使用一组相关的首选项页面将更加方便。

显示了首选项链接的屏幕快照


导入多个项目

现在,导入 > 现有项目至工作空间中命令允许搜索指定位置下的所有项目并一次导入任意数目的项目。您现在还可以从 TAR 和 ZIP 归档文件导入现有项目。


导入 tar.gz 格式/导出为 tar.gz 格式

导入导出 > Zip 文件向导现在支持 UNIX 系统上常用的 tar.gz 压缩归档文件格式。向导已被相应地重命名为导入导出 > 归档文件

显示了导出为 tar.gz 的屏幕快照


基于内容类型的编辑器查找功能

在确定要为给定文件打开的适当编辑器时,现在将考虑文件的内容类型。现在,编辑器可以公告它们能够处理某些内容类型以及那些内容类型的传统文件名和扩展名。

包含冒号和反斜杠字符的文件名

以前,在 Eclipse 中无法创建名称包含冒号(“:”)和反斜杠(“\”)字符的资源。现在,当在允许文件名使用此类字符的操作系统(如 Linux)上运行 Eclipse 时,允许使用此类字符。当文件名必须跨多个操作环境有意义时,您必须十分谨慎;尤其是,Windows 不允许文件名使用这些字符中的任何一个字符。

显示了文件名包含 :\ 的屏幕快照


对可执行属性和归档属性的支持

现在,您可以查看和更改特定于 OS 的文件属性,如可执行位(基于 Unix)和归档位(基于 Windows)。现在,在从存储库中检出文件或者将文件落实到存储库时,CVS 将保留这些属性,导入向导将保留从本地文件系统导入的文件和目录的属性。


行定界符支持

现在,您可以设置在创建新文本文件时要使用的行定界符。可以为整个工作空间提供单一设置,也可以为给定项目提供单一设置。此外,现在可以将行定界符转换功能应用于项目、文件夹和文件,而不仅仅是应用于单个编辑器中的内容。

缺省定界符对话框的屏幕快照


单 JAR 插件

Eclipse 现在能够交付打包成单个 JAR 文件(而不是打包成文件目录)的插件。您可以将此功能看作将插件元数据(plugin.xml 等)封装到它的代码 JAR 中。此项举措有许多优点,文件更小,可更容易、更快速地安装,并且更加符合 JAR 这种标准 Java 文件格式。

在 Eclipse 3.1 中,大部分插件在所有分发中都是作为 JAR 交付的。这种格式是新的 Eclipse 封装最佳实践。

显示了已压缩为 JAR 文件的插件的屏幕快照


改进了编辑器上下文菜单

现在,编辑器上下文菜单提供了许多以前只有在其它视图中才可用的命令,因此这些命令的使用将更为方便。例如,您可以从编辑器的上下文菜单将文件落实到 CVS 或者运行并调试 Java 程序和 Ant 构建操作。

显示了“编辑器”菜单中的小组添加项的屏幕快照


查看所有键盘快捷键

当您在 Eclipse 中使用喜爱的编辑器和视图时,只需要按 Ctrl+Shift+L 就可以查看当前可用的键绑定的完整列表。这是一种相当不错的方法来了解用户界面功能以及通过了解更多键绑定提高生产率。在经过改进的常规 > 键首选项页面中也提供了此信息。

键绑定的屏幕快照


拆离的视图的行为

现在,Eclipse 3.1(在支持它的平台上)改进了对拆离的视图的支持。您现在可以更方便地将它们放到期望的位置,包括放到另一个 Eclipse 窗口上。

首先,从菜单中选取“已拆离”,或者将视图选项卡拖出来以创建它。

然后,将其放到您选择的位置,并将其它视图拖放到同一窗口中。使用菜单或者通过拖动视图选项卡以将其放回到工作台窗口中。


拖动透视图按钮

现在,Eclipse 3.1 支持重新排列透视图切换程序中透视图按钮的顺序,并且,可以通过将一个透视图拖放到透视图切换程序外部来对该透视图打开新窗口。

显示了拖动透视图按钮的屏幕快照


动画

工作台支持更多的动画以帮助用户了解用户界面元素的位置。例如,现在以动画的形式演示创建快速视图的过程。可以通过常规 > 外观 > 启用动画中的首选项来启用/禁用此功能。

改进了后台操作的错误对话框

现在,用于显示后台操作的错误对话框与工作台中其它位置显示的错误对话框更加一致。当有其它信息可用时,将显示附加的按钮,例如由于 CVS 操作失败而产生的以下对话框:

显示了 CVS 错误对话框的屏幕快照


首选项的导入和导出

导入/导出向导现在支持首选项。您可以选择导入或导出所有已更改的设置,也可以在受支持时选择仅导入或导出特定首选项。


内容类型首选项页面

在“常规”/“编辑器”首选项页面下面添加了用于编辑内容类型及其相关文件名和字符集的新首选项页面。

内容类型对话框的屏幕快照


新的功能首选项页面

引入了新的功能首选项页面,以便简化基于 Eclipse 的大型产品中对功能的管理。

功能首选项页面的屏幕快照


单词补全

在任何文本编辑器的所有当前打开的编辑器或缓冲区中,都可以将前缀补全为单词。单词补全功能的缺省键绑定为 Alt+/(在 Mac 上为 Ctrl+.)。

打开无标题文件

可以在不首先创建文件的情况下打开文本编辑器。您只需选择文件 > 新建 > 无标题文本文件

共享的编辑器首选项

常规 > 编辑器 > 文本编辑器首选项页面包含所有文本编辑器的设置。先前在“文本”和 Java 编辑器页面上的重复首选项已合并到一起,将来,预期其它基于文本的编辑器在适用的时候也可以使用那些设置。

共享编辑器首选项的屏幕快照


撤销历史大小首选项

可以在常规 > 编辑器 > 文本编辑器首选项页面上为文本编辑器设置撤销历史大小:

撤销历史大小首选项的图片


转换行定界符

用于转换行定界符的命令已移至文件 > 将行定界符转换为子菜单(以前在编辑菜单中)。

现在可以将行定界符转换功能应用于项目、文件夹和文件,而不仅仅是应用于单个编辑器中的内容。


超链接支持

以前只有在 Java 编辑器中才提供的超链接支持现已推广使用,并移到“平台文本”。常规超链接首选项在常规 > 编辑器 > 所有文本编辑器首选项页面上,现在,简单 URL 超链接功能在标准文本编辑器中也有效:

文本编辑器中的超链接的图片

使用了 Web 浏览器支持来显示链接,要了解详细信息,请参阅常规 > Web 浏览器首选项页面。

使用 SourceViewerConfiguration 配置的所有 SourceViewer 都将自动获得 URL 超链接功能。


撤销第一项更改将清除脏指示符

如果撤销最初的更改,编辑器选项卡中的脏指示符(*)将消失。

多行文本搜索和替换

搜索文本时使用的正则表达式模式将与多个文本行匹配。

多行搜索


欢迎启动栏

当在 Eclipse SDK 欢迎页面中选择“转至工作台”链接时,整个“欢迎”页面都将折叠到一个新的“欢迎”启动栏中,缺省情况下,该启动栏显示在“工作台”窗口左下角的修剪区中。“欢迎”启动栏使新用户能够快速恢复最后一个“欢迎”页面或使用快捷方式跳转到其中一个主页面。

虽然平台控制着基本行为和“恢复”按钮,但背景和前景色以及快捷方式是通过欢迎扩展添加的。请参阅 org.eclipse.platform 的插件清单以获取“欢迎”启动栏定义的示例。

“欢迎”启动栏的屏幕快照


新的“帮助”视图

通过引入“帮助”视图,帮助与您的工作位置更加接近。“帮助”视图包含各种页面,这些页面将根据您的需要提供帮助。如果您按 F1 键,该视图将打开并显示与您当时正在使用的项相关的主题。您也可以切换到“全部主题”并查看本地帮助中的其它内容。新的文档搜索功能横跨本地帮助、远程信息中心和 Eclipse.org,并且,现在可以直接从“帮助”菜单中访问 Web(通过帮助 > 搜索帮助)。

新的帮助视图的屏幕快照


现在,为所有对话框都提供了动态帮助功能

现在,在对话框中也提供了 M5 中对工作台窗口添加的新的动态帮助功能。当被特定于系统的帮助快捷键(在 Windows 上是 F1 键,在 Linux GTK 上是 Shift-F1 键,等等)触发时,将打开与对话框并列的 shell,它显示了相关的帮助信息。多页面对话框(如向导、首选项、启动配置和搜索等等)将在您翻页时触发帮助窗格更新其内容。

显示了动态帮助的屏幕快照


在后台下载更新

更新管理器的安装向导(帮助 > 软件更新 > 查找并安装)现在允许在后台下载插件。这样,您就可以在下载插件时继续工作。一旦全部内容下载完毕,安装阶段(将 JAR 文件解压缩并将它们移至安装目录)仍由模态对话框控制。

导入/导出将更新站点书签

现在,可以将更新站点书签导出到一个文件中。这样,您就可以方便地在构建之间迁移书签、跨多个 Eclipse 安装共享书签或者将它们提供给其他开发者。

显示了“导入”/“导出”按钮的屏幕快照


更新站点镜像

现在,更新站点可以指定镜像其内容的服务器列表。在镜像的更新站点上查找功能部件时,将提示您挑选任何可用的镜像。

显示了镜像的屏幕快照

(要了解有关如何在 site.xml 中指定镜像的详细信息,请参阅错误 69008。)


改进了对功能部件依赖项的处理

当安装依赖于其它功能部件的功能部件时,安装向导允许自动包括所有可用的依赖项。按选择必需项按钮以包括所选功能部件的所有先决条件,然后按安装全部以完成安装。

“选择必需项”按钮的屏幕快照


RCP 增量包

现在,提供了一个新的 RCP 增量包(它列示在下载页面的 RCP SDK 部分中)。这个增量包包含 RCP 插件的所有特定于操作系统的段,它是供需要为不同操作系统创建一系列应用程序下载项的 RCP 开发者使用的。这样,就不必下载所有特定于操作系统的 RCP 二进制文件。

SWT 浏览器窗口小部件改进

已经对 SWT 浏览器窗口小部件作了许多改进。重要部分包括:

  • 在 Windows 上,现在可以在独立的 Internet Explorer 浏览器中打开新窗口。
  • 在 Linux 上,浏览器现在能够与 Mozilla 1.7 GTK2 以及 Mozilla 1.4 GTK2 和更高版本配合使用。
  • 一个新的执行方法可以传递任意的 JavaScript 命令字符串,底层本机 JavaScript 引擎(Windows 上的 Internet Explorer,Linux 上的 Mozilla 以及 Mac 上的 Safari)将在浏览器窗口小部件中当前装入的 HTML 文档的上下文中对该命令字符串进行直接求值。

嵌入式浏览器视图的屏幕快照

新的“浏览器演示”示例(显示在上面)举例说明了如何将带有 SWT 浏览器窗口小部件的 HTML 内容集成到应用程序中。获取 SWT 样本的最简单方法是通过新的欢迎页面完成任务。


新的微调框窗口小部件

现在,SWT 在所有 Windows 系统上都提供了微调框窗口小部件。请参阅 org.eclipse.swt.widgets.Spinner

SWT 微调框窗口小部件的屏幕快照


GC.setLineCap 和 GC.setLineJoin

GC.setLineCap 允许您控制应该如何绘制线的末端(平面、圆形或方形样式,如下图中上面的那条线所示)。GC.setLineJoin 允许您控制在诸如 GC.drawPolylinesGC.drawPolygon 之类的方法中一条线如何与另一条线连接。连接样式包括斜角、环接和斜接(下图中下面的那条线)。

显示了新的 SWT 线样式的屏幕快照

请参阅 SWT 片段绘制具有不同线端和连接样式的线条


鼠标滚轮事件

现在,当用户滚动鼠标滚轮时,SWT 将提供事件。注意,滚动滚动条的缺省行为将继续象以前那样起作用。请参阅 SWT.MouseWheel

改进了布局支持

CompositeLayout 提供了新方法来允许应用程序提高布局性能以及 强制安排所有子代的布局,即使中间有无法调整大小的父代亦如此。
  • Composite.layout(Control[])
  • Composite.layout(boolean, boolean)
  • Composite.setLayoutDeferred(boolean)
  • Layout.flushCache(Control)

从布局中除去窗口小部件

RowDataGridData 有一个新的 exclude 属性,它可以从布局管理中除去相关联的窗口小部件。以前,应用程序必须除去窗口小部件并重新创建它才能实现此效果。

要了解更多详细信息,请参阅示例片段


用于 Solaris-GTK+ 的 SWT

Solaris-GTK 已成为构建 SWT 和 Eclipse 所例行支持的配置。

选择剪贴板

GTK 和 Motif 上的 Unix 用户现在可以使用中间鼠标按键选择文本和粘贴该文本。

带有列的本机树

SWT Tree 窗口小部件现在可以显示多列。Tree、TreeItem 和 TreeColumn 中新的 API 为列提供了与 Table 相同的支持。 这使 TableTree 窗口小部件变得过时了,现在不建议使用该窗口小部件。

多列树的屏幕快照

要了解更多详细信息,请参阅示例片段


可重新排序的表列

可以通过拖放列头(以及通过程序设置)来更改表中列的显示顺序。

正被移动的表列的屏幕快照

要了解更多详细信息,请参阅示例片段


独立 SWT 下载项现在是一个 Eclipse 项目

对于独立 SWT 应用程序的开发者来说,SWT 组件现在是作为单独的下载项提供的。对于 Eclipse 3.1 来说,现在可以很方便地将 SWT 下载项作为项目导入到工作空间中。

  1. 下载用于单机应用程序的 SWT。独立版本的 SWT 是在 Eclipse SDK 所在的那个下载页面上提供的。查找标题为“SWT 二进制和源代码”的那一节。不要解压缩此归档文件,仅将它保存至磁盘。
  2. 文件菜单中选择导入...
  3. 选择现有项目至工作空间中,然后单击下一步按钮。
  4. 选择选择归档文件:并使用浏览按钮来查找先前下载的 SWT 单机归档。
  5. 单击完成按钮。

已导入的 org.eclipse.swt 项目定义了本机库的位置,因此您可以使用标准 Java 或 JUnit 启动程序来运行应用程序了。


使用 PDE 启动 SWT 独立应用程序

在 3.1 中,核心 Eclipse 插件(包括 SWT)被打包成单个 JAR 文件而不是文件目录。SWT 插件 JAR 现在包含包括本机库在内的所有内容。

要运行独立 SWT 应用程序,必须将本机库放在 java 库路径中。如果您使用“SWT 二进制文件和源代码”下载,则就为您解决了问题,但有时可帮助您根据 Eclipe SDK 提供的 SWT 插件进行构建。在 Eclipse 3.0 中,独立 SWT 开发者使用 -Djava.library.path 来添加本机库。在 Eclipse 3.1 中,由于本机库位于 JAR 中,所以开发者无法方便地找到这些库。

要使用 Eclipse 的 SWT 插件来运行和调试 SWT 应用程序,您可以使用 SWT 应用程序启动程序来查找本机库。通过选择运行方式 > SWT 应用程序,可以从 Java 类的上下文菜单中获得启动程序的快捷方式。

启动 SWT 应用程序的屏幕快照

请注意,在将来的发行版中,SWT 应用程序启动程序可能不是必需的。


高级图形

为高级图形操作(例如曲线和直线的路径以及 α 混合和变换)添加了新的 API。这个新的 API 需要 GTK 和 Motif 上的 Cairo Vector 引擎以及 Windows 上的 GDI+

显示了使用中的高级 GC 功能部件的屏幕快照

要了解更多详细信息,请参阅示例片段


Windows XP 按钮外观

在 Windows XP 上,带图像的按钮现在能够显示当前皮肤的期望外观。

XP 上的图像按钮的屏幕快照

要了解有关 Windows XP 皮肤的更多详细信息,请参阅 SWT FAQ


新的 Link 窗口小部件

新的 Link 窗口小部件显示包含超链接的文本。

新的链接窗口小部件的屏幕快照

要了解更多详细信息,请参阅示例片段


StyledText 中的删除线和下划线

使用新的 StyleRange.underlineStyleRange.strikeout 字段,文本可以带有下划线或删除线。

显示了新的 SWT 文本样式的屏幕快照

要了解更多详细信息,请参阅示例片段


CVS 传出更改集

传出更改集允许您在落实传出更改前将它们组织成逻辑组。要启用传出更改集,请将“同步”视图置于“传出”模式,单击“同步”视图中的更改集按钮 ,然后选择传出更改并从上下文菜单中选择添加到 > 新建更改集...。也可以将某个更改集指定为缺省更改集并将所有后续传出更改自动添加到该集合中。上下文菜单中的命令允许在更改集之间移动传出更改。在将更改集落实到 CVS 存储库时,就会将与该更改集相关联的注释用作 CVS 落实注释。

传出更改集的屏幕快照


彩色的 CVS 标号修饰

可以将 CVS 标号修饰配置为使用颜色和字体来突出显示文件状态。可以在小组 > CVS > 标号修饰首选项页面上为 CVS 启用颜色和字体修饰并通过常规 > 颜色和字体 > CVS 首选项页面来为传出更改和被忽略的文件配置颜色和字体修饰。

彩色 CVS 标号修饰的屏幕快照


对 CVSNT 的支持
感谢 CVSNT 开发者的努力,Eclipse CVS 客户机现在可以支持 CVSNT。高于 2.0.58b 的 CVSNT 版本已经针对 Eclipse 3.1 进行了测试。

CVS 落实复审

落实对话框现在包含正在落实的文件的列表。这样,您就可以方便地在写落实注释时浏览文件以及通过从列表中除去某些文件来将它们阻止。当直接从“包资源管理器”或“导航器”视图中落实时,此功能尤其有用。

落实复审的屏幕快照

还提供了用于确定落实注释是否必需以及用于指定落实时应该显示的最大文件数的 CVS 首选项(小组 > CVS)。


改进了 CVS 文件类型支持

现在,每当将要落实文件类型未知的文件时,CVS 就会给出提示。这使您能够明确地配置文件类型,而不是让 CVS 选择二进制作为缺省类型。并且,文件类型的确定现在可以只基于文件名(例如 Makefile)而不是仅仅基于文件扩展名。

文件类型支持的屏幕快照


CVS 分支与合并

现在,CVS 分支向导允许您使用内容辅助,从某一在工作空间已分成多个分支的项目中选择一个分支。

分支的屏幕快照

在进行合并时,您可以仅仅指定结束标记,向导将自动找到合适的开始标记。即使没有开始标记,您也仍然可以进行合并,而不必在“同步”视图中查看预览。


CVS 过滤标记

现在,CVS 替换和比较命令在选择分支或版本时使用的标记选择对话框在您输入内容的同时动态地显示标记。

标记过滤的屏幕快照


Ant 调试器

新的 Ant 调试器帮助您调试 Ant 构建文件的执行。它包含标准的调试器功能,例如断点、单步执行、依赖关系调用堆栈以及“运行到行”支持。

Ant 依赖关系调用堆栈

为了为您提供方便,“变量”视图中 Ant 属性的显示也进行了分组:
  • 系统:从系统中为构建设置的 Ant 属性
  • 用户:诸如使用 -D 选项设置的属性之类的属性
  • 运行时:在执行构建期间设置的所有属性

Ant 编辑器中的
折叠

Ant 编辑器现在支持将构建文件区域折叠。通过悬浮在已折叠的 Ant 元素上,您可以看到隐藏的代码。您可以从编辑器标尺菜单中快速控制构建文件的折叠显示。

Ant 编辑器中的代码折叠的屏幕快照


Ant 编辑器中文件中的重命名操作

现在,您可以在 Ant 编辑器中将出现在同一个构建文件中的属性和目标重命名。要激活此功能,当光标定位在出现的要重命名的项中时,使用编辑器上下文菜单或 Alt-Shift-R 键盘快捷键。

显示了 Ant 编辑器中的重命名的屏幕快照


在 Ant 编辑器中对出现的项作标记

现在,可以让 Ant 编辑器对出现的属性和目标作标记。对出现的项进行的标记操作是通过 Ant 编辑器首选项和编辑器工具栏操作控制的。

显示了 Ant 标记出现首选项的屏幕快照

突出显示的出现项的屏幕快照


Ant 编辑器中的超链接导航

Ant 编辑器支持使用 Ctrl 组合键进行超链接导航。可以从 Ant > 编辑器 > 导航首选项页面中更改组合键。

Ant 超链接支持


Ant 编辑器:仅选择的元素

现在,可以将 Ant 编辑器的作用域限制为仅显示构建文件中的所选源代码元素。对于其它编辑器来说,此功能与 Eclipse 工具栏中的仅显示所选元素的源代码切换按钮相对应。

改进了 Ant 导航

在 Ant 编辑器中,导航 > 打开声明(F3 键)将导航到引用的目标或属性。


现在显示外部 Ant 构建文件中的错误

现在,甚至可以显示通过文件 > 打开外部文件... 打开的 Ant 构建文件的错误和警告注释。

轻而易举地查看 Ant 手册

在 Ant 编辑器中,将光标定位在 Ant 任务和类型等项的名称上,此时,按 Shift+F2 将打开浏览器并显示 Ant 手册中的相关页面。

Ant 外部文档


每次构建时的 Ant 目标

Ant 构建器的“目标”选项卡允许您指定应该为每次构建执行的目标。这包括当您调用“清除”时要执行的目标。

“目标”选项卡


对 Ant 编辑器中的错误报告功能进行更大程度的控制

您现在可以将 Ant 编辑器设置为忽略所有构建文件问题。并且,可以指定编辑器对哪些特定构建文件名不应该报告问题。这两项设置都是使用 Ant 编辑器的“问题”首选项控制的。

Ant 错误报告首选项的屏幕快照


控制台 EOF

在“控制台”视图中,可以通过按 Ctrl+Z(Windows)或 Ctrl+D(Linux)来向正在等待输入的程序指示文件结束。

控制台编码

可以将控制台配置为使用与缺省编码不同的字符编码来显示输出。要为应用程序设置控制台编码,请使用启动配置的“公共”选项卡上的控制台编码设置。

捕获程序输出

现在,除了将程序输出写至控制台以外,还可以将其捕获到文件中。此行为是由启动配置的公共选项卡上的设置控制的。


多个控制台视图

如果您认为需要同时查看多个控制台,现在可以通过“控制台”视图中的打开控制台下拉菜单中的新建控制台视图命令打开其它“控制台”视图。


断点组织

“断点”视图允许按类型、项目、文件或工作集来对断点进行分组,并支持嵌套分组。您可以使用断点工作集来将断点分组成特定于问题的集合,这样就可以作为一个整体快速地启用和禁用它们。新创建的断点将被自动放到缺省断点工作集(显示为粗体)中。您可以在断点工作集之间复制和粘贴断点以及拖放断点,并且可以将一个断点放到多个断点工作集中。

显示工作集的“断点”视图