迎接 Eclipse 3.5(Galileo):新特性

  • Dio Synodinos
  • 宋玮

2009 年 6 月 14 日

话题:JavaIDE语言 & 开发架构

尽管 RC3(Release Candidate 3)版已发布,代号“Galileo”的 Eclipse 3.5 仍需两周才能达到 GA(General Availability )状态。这一新版的 Java 开发环境包括了不少新特性并对以前版本做出了改进。

新特性包括:

平台及 UI

  • Solaris x86 已经加入支持行列
  • Install New Software 向导中的“Work with:”下拉框现在支持自动补全
  • 增加了一个新的介绍主题,叫做“Slate”
  • 打开的编辑器及多编辑器页面间的切换更加容易(快捷键:Ctrl+PageDown/Ctrl+PageUp,Alt+PageDown/Alt+PageUp)
  • 为了快速关闭,现在可以安全地跳过清楚历史这一步骤
  • 至于编辑器的常规提示框和对话框,或当前工作台窗口、表单现在可以在 Mac Cocoa 上使用
  • 应用程序在打印过程中或打开打印对话框时,可以选择 portrait 或 landscape 模式
  • Eclipse 富客户端平台现在包含了一个 OSGi 声明式服务(Declarative Services——DS)的实现
  • 你现在可以针对给定选项“钉住”属性视图
  • 一个新偏好页,可以管理用于选择工作区的启动提示框
  • About 对话框现在提供一种机制,让 plug-in 可以给平台 about 对话框提供安装页面
  • Install New Software 向导现在无需等待连接任何更新服务器就可以立即打开
  • 双击垂直折叠线(vertical folding line)可以折起折叠区域
  • 比较编辑器有几处增强
  • 你现在可以在 Debug 视图中快速切换挂起线程
  • 支持 Cocoa 和 Cocoa 上的 OpenGL
  • 增加对 FileTransfer 类的支持,使得可以在 Explorer 和 Nautilus 文件管理器之间进行 copy/paste 操作
  • 对项目浏览器作出几项改进
  • 文本编辑器现在支持块选择模式(也就是按列选择或矩形块选择)
  • 你现在可以直接在 Synchronize 视图中应用一个补丁
  • 在 Eclipse 中比较 Word 文档变化,现在使用该 Word 比较功能支持把变化显示为修订

Equinox

  • 增强 Equinox DebugOptions API,以支持选项设置的动态变化
  • 增加一个新的 debug 跟踪 API——org.eclipse.osgi.service.debug.DebugTrace,以增强并简化编写 debug 跟踪信息
  • OSGi R4.2 核心规范给核心框架增加了一些小 API
  • 新的 Equinox 并发 API

Plug-in 开发环境

  • 有一个新的 Target Platform State(目标平台状态)视图
  • 你现在可以创建并共享一个由软件站点的软件组成的目标定义
  • 新的 Category Definition 编辑器可以在输出时用于给特性归类
  • 你现在可以查看 API 相对于 API 基线的变化
  • 通过在菜单 introspection mode 里调用 plug-in Spy 来查看关于菜单的信息
  • 增强 OSGi Declarative Services (DS),以支持最新版的 DS 规范
  • 你现在可以从 OSGi 启动配置中初始化产品定义
  • 有一个新的目标平台偏好页面
  • PPlug-in export 现在支持创建 source bundles
  • Declarative Services 现在支持最新版的 OSGi declarative services 规范(1.1)更新
  • PDE 中的 JAR signing 支持扩展包含了对 keypass 的支持
  • 增强目标编辑器,以支持目标定义中的新特性
  • API 工具现在可以分析系统类库的使用情况及代码访问运行时不存在的成员时所产生的问题
  • 你现可以在非 UI 线程中启动 Junit Plug-in 测试
  • Eclipse 应用程序启动配置现在支持启动级别(start level)及自动启动设置
  • Plug-in Registry 视图现在支持浏览 OSGi 服务
  • 给 PDE/Build 增加了一个新的扩展,可以使用户从 p2 库中获取制品
  • API 工具现在支持在接口上的两个约束:@noimplement 和 @noextend。这就使得在不想直接实现一个接口的时候可以扩展它
  • 即使你已经增大了 plug-in 的主版本号,仍会被提示破坏 API 的改变
  • PDE 增强了 bundle 及特性(feature)输出,以把输出的 bundles/feature 安装到当前正在运行的工作台
  • 输出特性、plug-in 及产品时可以选择 binary cycles
  • PDE 增加了 declarative services 工具,以帮助作者提供组件定义

Java 开发工具

  • NLS string hover 现在有一个 Open in Properties File 动作
  • 在 Caller 模式下,调用层级(Call Hierarchy)现在有一个在上下文菜单中有一个 Expand With Constructors 动作
  • 当你在编辑器中输入的时候,Java 比较编辑器会更新其结构
  • 有一个新的 toString() 产生器
  • 为可覆盖方法增加了一个 Open Implementation 链接,可以直接打开其实现
  • 编辑器与执行环境一致
  • Debug 视图现在提供了 breadcrumb(面包屑),显示了当前活动的 debug 上下文
  • 可运行的 JAR 文件输出向导还可以把所需的类库打包进一个要输出的可运行 JAR 文件,或打包进与紧挨着该 JAR 的一个目录中
  • 当在写一个分配表达式(allocation expression)时发生补全操作,内容助手现在可以提示一个类的可用构造方法
  • 如果检测到无用代码,编译器现在可以发出警告
  • 类库、变量或容器入口的路径现在可以是与项目相关的任何位置
  • 在 Jovadoc hover 的头部及 Javadoc 视图中,现在都提供了引用其他类型和成员的链接
  • 随该 Eclipse 发行的 JUnit4 版本更新为 4.5
  • Javadoc 视图及 hovers 现在都支持{@inheritDoc}标签并给覆盖方法增加链接
  • 同一值的比较现在由编译器检测,默认情况下会发出警告

完整的 Galileo 发布时间表显示出在 6 月 24 日 GA 版本到来之前,还有两个 RC 版本。

你可以为你的平台下载RC 3或者阅读 InfoQ 上更多关于 Eclipse 的新闻

查看英文原文:Getting Ready for Eclipse 3.5 (Galileo): What’s New?

JavaIDE语言 & 开发架构