SpringSource Tool Suite 发布
今年的 EclipseCon 是我们公司首次参加。我们举办了许多讲座,都受到了热烈欢迎,并且宣布了针对 SpringSource Tool Suite 的 Beta 项目。总的来说,我们度过了非常愉快的时光,并从 Eclipse 社区获得了关于 Spring Portfolio 项目,特别是我们在 Web 领域所做工作的许多反馈。我将在接下来的几周内确保将所有反馈转达给项目负责人。由于 EclipseCon 今天即将结束,我终于有时间坐下来写写我们在大会上推出的内容。
周一,我们在 BoF 会议上发布了个人使用版 SpringSource Tool Suite (STS),并且我花费了大量时间与人们交流它带来的额外价值。在这篇博客中,我将更详细地概述 SpringSource Tool Suite 的功能。首先,我听到了很多次人们认为 SpringSource Tool Suite 的发布意味着我们将停止改进和塑造 Spring IDE。请允许我澄清,情况绝非如此;事实上恰恰相反,看看 Spring IDE 的 JIRA 和 Subversion 仓库就知道了。事实上,自从我一月份加入 SpringSource 以来,我在并行开发工具套件的同时,能够增加花在 Spring IDE 上的时间。
SpringSource Tool Suite 的目标是为您提供在 Eclipse 平台上使用 Spring Portfolio 进行企业开发的最先进开发工具——这听起来像营销术语,但这正是工具团队的使命宣言。STS 无疑建立在成熟的 Spring IDE 之上,但它与 Eclipse Mylyn 紧密结合,并且已经扩展了这两个开源工具,将企业级扩展带入您的 IDE。为了提供最好的 Spring 工具,我们已经开始并持续向 Spring 核心框架和其他 Spring 项目添加工具相关的特性、钩子和扩展点。
因此,有了这个工具套件,您终于可以获得 Mylyn 面向任务的用户界面(Task-Focused User Interface)在进行 Spring 开发方面的所有好处。在处理 Spring 应用程序蓝图时,您可以获得上下文管理和聚焦。此外,我们将面向任务的 UI 方法提升到了一个新的水平,并引入了一项我们命名为面向任务的教程(Task-Focused Tutorials)的新技术。面向任务的教程扩展了 Eclipse Cheat Sheet 框架,并为教程的每个步骤添加了任务聚焦。通过面向任务的教程,用户——无论是 Spring 新手,还是想学习特定功能或 Spring 项目的人——只需单击一下即可导入正在运行的示例应用程序,并开始探索该示例。每个教程步骤都会解释教程的某个方面,并且只显示与理解和探索该解释相关的 Java 和 Spring 元素。
从上面的截图可以看到在 Eclipse 中是如何呈现的。教程将 PetClinic 示例应用程序导入到 Eclipse 工作区,并聚焦工作区,只显示 @Autowired 注解及其如何应用于应用程序组件。右侧是展开的步骤,解释了何时以及为何应该使用 @Autowired 注解。在教程的最后,用户只需点击一下即可在捆绑的 Tomcat 服务器上启动示例应用程序,该服务器会自动安装和配置。
我们认为这种介绍新功能和产品的方式是一种非常强大的方法,它让人们可以轻松探索 Spring Portfolio。开发者入门所需的一切都恰好在其应在的位置:IDE 内部。当您下载个人使用版 Beta 时,您将立即获得大约 20 个教程,这些教程均由项目负责人或直接与客户合作的经验丰富的顾问创建。最值得注意的是 Adrian Colyer 花时间创建了 7 个教程,介绍了 OSGi 概念、Equinox 和 Spring Dynamic Modules。如果您现在想搭上 OSGi 的列车,这些教程非常棒。该工具套件包含一个自动 OSGi Bundle 更新/刷新机制,最终允许在应用程序上工作并基于 OSGi 运行时获得即时重新部署语义(您用 EJB 尝试过吗?我试过)。
我想谈论的下一个功能叫做运行时错误分析(Runtime Error Analysis):SpringSource Tool Suite 能够通过分析 Java 堆栈跟踪来提供解决运行时问题的信息。为了实现这一点,我们创建了一个在线知识库,该知识库集成到套件中,并且可以在 Eclipse IDE 内部直接查询。该知识库对所有使用该工具的人开放,我们甚至鼓励人们使用内置的富编辑功能贡献自己的分析。请看下面的截图。
使用这个工具套件,您不仅可以获得分析运行时错误的支持,工具还会帮助您查找常见陷阱和违反 Spring 最佳实践的情况。特别是在处理 XML bean 定义文件时,此功能非常方便,因为它会在 XML 编辑器内直接通知开发者文件中可能需要修改的地方。例如,在某些情况下,该工具会检测并推荐使用 bean 继承。它还会推荐使用不断改进的命名空间元素,而不是传统的 bean 定义方式。这里有一个例子
那么我们来看看我们有哪些功能
- Spring 开发工具
- Mylyn 的面向任务用户界面(Task-Focused User Interface),适用于 Java、资源和 Spring 应用程序蓝图
- 面向任务的教程(Task-Focused Tutorials)
- 运行时错误分析(Runtime Error Analysis)
- 最佳实践和架构评审工具
还有一些我没有提及的功能。你看到这些功能列表中的主题了吗?最后列出的三个功能为开发强大的基于 Spring 的应用程序提供了宝贵的帮助。在内部,我们开始使用一个比喻来形容这套功能:盒子里的顾问(Consultant in a Box)。通过 SpringSource Tool Suite,我们希望让您能够获得 SpringSource 的知识,就好像有位顾问坐在您旁边一样!
我鼓励大家前往 Beta 注册页面 试用 Tool Suite。最后,我还要感谢所有已经提交反馈、问题和建议的人。一旦 EclipseCon 这忙碌的一周结束,我就会回复大家。