MAC下的java环境

  • dW
  • 登录    注册
  • IBM

搜索 developerWorks

  • 打印本页面
  • 用电子邮件发送本页面
  • 新浪微博
  • 人人网
  • 腾讯微博
  • 搜狐微博
  • 网易微博
  • Digg
  • Facebook
  • Twitter
  • Delicious
  • Linked In
  • developerWorks 中国
  • 技术主题
  • Open source
  • 文档库

使用 Eclipse 让您最大限度地获得 OS X Java 开发体验

在 OS X 上快速轻松地构建 Java 和其他应用程序,感谢 Eclipse

Mac OS X 是用于 Java™ 开发的强大平台。虽然 Java 开发环境已完全集成到 Mac OS X 中,但是 Eclipse 集成开发环境 (IDE) 将把完整的集成 Java 开发环境引入 Mac OS X 中,提供了一致的跨平台体验。了解如何使用此环境把现有的 Xcode 项目导入 Eclipse,如何修改键绑定,以及如何将 Eclipse 与 Mac OS X 附带的并发版本系统(Concurrent Versions System,CVS)集成在一起。

John Fronckowiak, 总裁, IDC Consulting Inc.

2007 年 9 月 03 日

  • +内容

不管您是从事跨平台 Java 项目的 Mac OS X Java 开发人员,还是因基于 UNIX® 内核转而使用 Mac OS X 的 Linux® 开发人员,还是期望开发针对 Mac OS X 的应用程序的一般 Java 开发人员,都需要考虑 Eclipse IDE,因为它将针对这些开发需求逐个提供解决方案。虽然 Mac OS X 提供了 Xcode 作为其主要 Java 开发 IDE,但是 Eclipse 将提供更健壮的跨平台开发环境,提供报表、数据库访问、通信、图形等应用程序框架,以及构建应用程序的富客户机平台框架。

如果您在 Linux 上使用过 Eclipse,则在 Mac OS X 使用 Eclipse 将是小事一桩。安装十分简单。转到 Eclipse 下载页面(请参阅 参考资料)并下载 Eclipse IDE for Java Developers 的 Mac OS X 版本。下载用 gzip 压缩的 .tar 文件,必须将该文件释放到名为 Eclipse 的文件夹中。使用 Finder,将此文件夹拖动到 Applications 文件夹中。要启动 Eclipse,只需双击 Eclipse 应用程序。

如果您在其他平台上使用过 Eclipse,您将会看到熟悉的窗口。如果将 Xcode(Mac OS X 附带的开发 IDE)用于开发,则项目通常会被保存到主目录中。使用 Eclipse,将在 Documents 目录中自动创建工作区,并且在默认情况下,所有项目都将被保存到此位置。

导入现有 Xcode 项目

假定您在 Xcode 中创建的 Java 项目需要移植到 Eclipse 中。幸运的是,将现有应用程序移植到 Eclipse 中十分轻松。要将现有应用程序移植到 Eclipse 中,请执行以下步骤:

  1. 在 Eclipse 中,创建一个新的 Java 项目。
  2. 在 File 菜单中,选择 New Project
  3. 在 New Project 窗口中,选择 Java Project 向导(图 1)。单击 Next
    图 1. 选择 Java Project 向导
    MAC下的java环境_第1张图片
  4. 给您的新项目命名,然后选择 Create project from existing source,如下所示:
    图 2. 通过现有源文件创建 Java 项目
    MAC下的java环境_第2张图片
  5. 单击 Browse 定位现有项目所在的目录,通常是 Home 目录中的某个位置。
  6. 单击 Finish 或单击 Next 继续配置新项目。默认情况下,Eclipse 将自动编译项目目录中的所有 .java 文件。
  7. 要确保编译,请选择 Project > Build Automatically。当 Eclipse 编译应用程序时,任何错误或者问题都将显示在 Eclipse IDE 窗口底部的 Problems 视图中,如图 3 所示。如果没有显示 Problems 选项卡,请选择 Window > Show View > Problems
    图 3. Eclipse 工作区
    MAC下的java环境_第3张图片

    注:如果使用现有 Xcode 应用程序模板创建了应用程序,那么您可能会看到几个警告。在本例中,图 3 中导入的项目是基于 Xcode Swing 模板项目的,因此有几个警告指示类未声明 static final serialVersionUID,它仅在需要序列化这些类时才十分重要。您可能会发现这些警告十分讨厌,但是这是有一种很简单的方法可以将它们从 Problems 视图中删除。

  8. 选择 Eclipse > Preferences 将显示 Preferences 窗口。
  9. 在左侧窗格中,展开 Java,再展开 Compiler,然后单击 Errors/Warnings
  10. 在右侧窗格中,展开 Potential programming problems,如下所示:
    图 4. 将警告从 Problems 视图中删除
    MAC下的java环境_第4张图片
  11. 将 Serializable class without serialVersionUID 选项从 Warning 更改为 Ignore
  12. 单击 OK 保存您的新首选项。系统将提示您重新构建应用程序。完成后,这些警告将被从 Problems 视图中删除。

如果构建的是使用菜单的基于 Swing 的应用程序,那么当您运行应用程序时,菜单将作为应用程序窗口的一部分显示,而不是像典型的 Mac OS X 应用程序一样显示在屏幕的顶部。默认情况下,Xcode 将向虚拟机中添加实参以确保显示屏幕菜单的顶部。但是,使用 Eclipse 时,必须手动添加此实参。当您选择 Run > Run menu 时,将显示 Run 窗口。单击 Arguments 选项卡,如下所示:

图 5. Run 窗口
MAC下的java环境_第5张图片

在 VM arguments 框中,键入 -Dapple.laf.useScreenMenuBar=true。现在,Swing 应用程序菜单将显示在窗口的顶部,而不是显示在应用程序窗口中,看上去就像一个普通的 Mac OS X 应用程序。如果您的 Java 应用程序是基于 Standard Widget Toolkit (SWT) 的,则不需要使用此实参。

修改键绑定

如果您是一名有经验的 Mac 用户,则可能会发现 Eclipse 使用的一些 Ctrl+key 组合不是您所期望(或需要)的。例如,如果您是经常使用 Xcode 或 TextEdit 的用户,则会发现 Find Next 和 Find Previous 的快捷键被分别映射为 Command+K 和 Command+Shift+K,而不是您所熟悉的 Command+G 和 Command+Shift+G。幸运的是,Eclipse 提供的机制可以编辑键绑定 —— 用于完成特定任务的 Ctrl+key 组合键 —— 使其符合您的使用习惯。要修改键绑定,请选择 Eclipse > Preferences 以显示 Preferences 窗口。在左侧窗格中,展开 General,再展开 Editors,然后单击 Keys 以显示 View,如下所示:

图 6. 修改键绑定
MAC下的java环境_第6张图片

要修改某个功能的键绑定,请从列表中选择命令(例如,Find Next)。单击 Edit 以显示 Modify 选项卡,如图 7 所示。在 Name 框的 Key Sequence 下,删除当前的按键组合并简单地按住需要用于替代此功能的组合键 —— 在本例中为 Command+G。单击 Add 保存新的按键组合。

图 7. 修改 Command+key 序列
MAC下的java环境_第7张图片

注:Eclipse 还将保存选定功能的初始键绑定。如果需要删除初始键绑定,请在 Command 下的 Assignments 列表中选中它,然后单击 Remove

单击 View 返回到键绑定。您可以修改文本编辑、浏览、重构、运行/调试、搜索和源代码功能的键绑定,使其符合您的使用习惯。

Mac OS X CVS 集成

如果要在 Mac OS X 上的 Eclipse 中构建复杂的应用程序,则需要利用版本控制。Eclipse 提供与 CVS 的集成,CVS 是用于跟踪不同版本的应用程序源代码的开源系统。回想一下,在内核中,Mac OS X 是基于 Berkeley Software Distribution (BSD) Linux 风格的,因此它将附带 CVS 的工作安装版本。

Apple Developer Connection Web 站点(请参阅 参考资料)提供了一篇文章,可以指导您完成在 Mac OS X 上配置 CVS 的过程,因此我在这里不会介绍该过程。相反,本文将主要介绍 CVS 命令行选项。要将 CVS 与 Eclipse 集成在一起,必须做出一些调整。

首先,必须启用计算机上的远程登录 (Remote Login) 功能。注意,启用远程登录将允许任何人使用您的用户名和密码访问您的计算机,因此这样做可能会带来的一切后果将由您自己负责。

要在 Mac OS X 上启用远程登录,请执行以下步骤:

  1. 单击 Apple 图标,然后单击 System Preferences
  2. 在 System Preferences 窗口中,单击 Sharing 图标。
  3. 选择 Sharing 以显示 Sharing 窗口。
  4. 选中 Remote Login 复选框,如图 8 所示,然后服务将自动启动。
    图 8. 启用远程登录功能
    MAC下的java环境_第8张图片
  5. 关闭 Systems Preferences 窗口保存更改。

要检验 Remote Login 是否已处于启用状态,请使用 Terminal 应用程序,它将为您提供 bash shell 访问权。在命令提示符处,键入 ssh localhost。键入密码,然后退出以关闭远程登录会话。

现在可以把 Eclipse 项目添加到本地的 CVS 树中。方法如下:

  1. 在 Package View 中,右击项目文件夹,然后单击 Team > Share ProjectShare Project 窗口将显示,如下所示:
    图 9. Share Project 窗口
    MAC下的java环境_第9张图片
  2. 在 Host 框中,键入 localhost。如果您按照 CVS 配置教程执行了操作,则键入存储库路径 /usr/local/cvsrep
  3. 在 Authentication 下键入用户名和密码。
  4. 对于连接类型,选择 extssh,然后单击 Next
  5. 在 Enter Module Name 窗口中,选择 Use project name as module name,如图 10 所示,然后单击 Next
    图 10. 给项目命名
    MAC下的java环境_第10张图片

Eclipse 将连接至 CVS 服务器并创建模块。当该过程完成后,Eclipse 将确认把文件签入到存储库中。单击 Finish 以显示 Commit Wizard,它将向您提示一个日志条目。如果这是您首次签入项目文件,可以键入诸如 Project Start Check-in 或 First Check-in 之类的文本。您现在可以使用 CVS 在应用程序中管理版本化。

跨平台字符编码

编辑源文件时,Eclipse 将使用操作系统的本地字符集。默认情况下,Mac OS X 上的 Eclipse 将使用 MacRoman 字符集。如果在跨平台项目中使用 Eclipse,则最好使用 UTF-8 字符编码。要将此编码指定用于项目中的所有文件,请右击 Package Explorer 视图中的项目,然后单击 Properties。在 Text file encoding 下,选择 Other,然后从列表中选择 UTF-8,如下所示:

图 11. 设定字符编码
MAC下的java环境_第11张图片

在 Mac OS X 上最大限度地发挥 Eclipse 的性能

最后,为了帮助在 Mac OS X 上最大限度地发挥 Eclipse 的性能,还有其他几个小事项可以去做。首先,可以指定 Java 虚拟机 (JVM) 分配的最小堆空间和最大堆空间。默认情况下,Eclipse 将为堆分配 40 MB 到 256 MB 的内存。要修改分配的内存量,必须修改 eclipse.ini 文件。要访问 eclipse.ini,请右击 Eclipse 应用程序图标,然后单击 Show Package Contents 以打开显示 Contents 文件夹的新 Finder 窗口。打开 Contents 文件夹,然后打开 MacOS 文件夹,eclipse.ini 文件就保存在此文件夹中。

图 12. 在 TextEdit 中打开的 eclipse.ini 文件
MAC下的java环境_第12张图片

修改 -Xms 选项后的值可以更改最小堆空间,修改 -Xmx 选项后的值可以更改最大堆空间。例如,要使用 64 MB 到 512 MB 之间的堆大小,请将选项更改为 -Xms64m 和 -Xmx256m。如果 Eclipse 已被打开,必须关闭然后重新打开 Eclipse 才能使这些新选项生效。

如果关闭自动 Content Assist 取消为部分输入的字符串提供建议完成列表的功能,那么您还可以体验到性能提高。在 Eclipse Preferences 窗口的左窗格中,展开 Java,展开 Editor,然后单击 Content Assist。然后,取消选中 Enable Auto Activation 复选框。您仍然可以通过使用 Shift+Space 组合键,手动调用 Content Assist。

禁用 Automatic Folding 在大型项目中得到性能提高。要禁用 Automatic Folding,请在 Eclipse Preferences 窗口的左侧窗格中,展开 Java,展开 Editor,然后单击 Folding,然后取消选中 Enable Folding 复选框。

结束语

Mac OS X 为有 Linux 使用经验的开发人员提供了熟悉的开发环境。使用本文中概述的技巧,可以在 Mac 平台上最大限度地获得 Eclipse 开发体验。

参考资料 

学习

  • 您可以参阅本文在 developerWorks 全球站点上的 英文原文。
  • “Version Control with CVS on Mac OS X”(Apple Developer Connection)是一个在 Mac OS X 上配置 CVS 的分步指南。
  • 查阅 “Eclipse 推荐读物列表”。
  • 浏览 developerWorks 上的全部 Eclipse 文章和Eclipse 教程。
  • 您是 Eclipse 新用户?阅读 developerWorks 文章 “Eclipse 平台入门” 以了解它的起源和架构,以及如何用插件扩展 Eclipse。
  • 查阅 IBM developerWorks 的 Eclipse 项目资源 扩展 Eclipse 技巧。
  • 收听针对软件开发人员的有趣访谈和讨论,一定要访问 developerWorks podcast。
  • 要获得关于 Eclipse 平台的介绍性文章,请参阅 “Eclipse 平台入门”。
  • 随时关注 developerWorks 的 技术事件和网络广播。
  • 查看免费的 developerWorks On demand demo 观看并了解 IBM 及开源技术和产品功能。
  • 查阅最近将在全球举办的面向 IBM 开放源码开发人员的研讨会、交易展览、网络广播和其他 活动。
  • 访问 developerWorks 开放源码专区,获得丰富的 how-to 信息、工具和项目更新,帮助您用开放源码技术进行开发,并与 IBM 产品结合使用。

获得产品和技术

  • 在 IBM alphaWorks 中查阅最新的 Eclipse 技术下载。
  • 从 Eclipse Foundation 下载 Eclipse Platform 和其他项目。
  • 下载 IBM 产品评估版本,并开始使用 DB2®、Lotus®、Rational®、Tivoli® 和 WebSphere® 的应用程序开发工具和中间件产品。
  • 使用 IBM 试用软件 改进您的下一个开发项目,这些软件可以通过下载或从 DVD 中获得。

讨论

  • Eclipse Platform 新闻组 应当是讨论关于 Eclipse 的问题的第一站(选择此链接将启动默认的 Usenet 新闻阅读器应用程序并打开 eclipse.platform)。
  • Eclipse 新闻组 中有很多参考资料适用于对使用和扩展 Eclipse 感兴趣的人员。
  • 参与 developerWorks blog 并加入 developerWorks 社区。

条评论

请 登录 或 注册 后发表评论。

添加评论:

注意:评论中不支持 HTML 语法


有新评论时提醒我 剩余 1000 字符

快来添加第一条评论

  • IBM PureSystems

    IBM PureSystems™ 系列解决方案是一个专家集成系统

  • developerWorks 学习路线图

    通过学习路线图系统掌握软件开发技能

  • 软件下载资源中心

    软件下载、试用版及云计算

你可能感兴趣的:(Java)