用Eclipse开发J2ME手机游戏入门讲座

来源:互联网 发布:网络爆笑儿童喜剧 编辑:程序博客网 时间:2024/04/28 11:56

    我在天极网看到一篇关于用Eclipse开发J2ME的文章,觉得非常不错,所以拿来和大家一起分享。

    引自: http://www.yesky.com/SoftChannel/72348977504190464/20050411/1934159.shtml

    本期专题对Eclipse IDE开发工具、Eclipse开发环境的安装配置以及开发手机程序所需要的J2ME开发环境的安装配置等内容进行介绍,通过对"Hello World"程序的创建和发布使读者能够对Eclipse开发J2ME手机程序的一般过程有一个基本的认识,并能在此基础之上开发出自己所喜欢的手机游戏,实现对手机游戏的DIY。

第一讲 Eclipse简介

        什么是Eclipse

  Eclipse是一个开放源代码的、与NetBeans、Sun ONE Studio和Borland Jbuilder类似的一种基于Java的整合型可扩展开发平台,也是目前最著名的开源项目之一,IBM在最近几年里也一直在大力支持该项目的发展,目标是将其做成用以替代IBM Visual Age for Java(简称IVJ)的下一代IDE开发环境,并于2001年11月宣布投入4千万美元资金到该项目的研发。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括 Java 开发工具(Java Development Tools,JDT)。其未来的目标不仅仅是成为专门开发Java程序的IDE环境,根据Eclipse的体系结构,通过开发插件,它能扩展到任何语言的开发,甚至能成为图片绘制的工具。

  目前,Eclipse已经开始提供C语言开发的功能插件。更难能可贵的是,Eclipse是一个开放源代码的项目,任何人都可以下载Eclipse的源代码,并且在此基础上开发自己的功能插件。也就是说未来只要有人需要,就会有建立在Eclipse之上的COBOL,Perl,Python等语言的开发插件出现。同时可以通过开发新的插件扩展现有插件的功能,比如本系列文章为了进行手机应用程序的开发就是通过J2ME插件的扩展来加以实现的。可以无限扩展,而且有着统一的外观,操作和系统资源管理,这也正是Eclipse的潜力所在。

  Eclipse的主要组成

  Eclipse是一个开放源代码的软件开发项目,专注于为高度集成的工具开发提供一个全功能的、具有商业品质的工业平台。它主要由Eclipse项目、Eclipse工具项目和Eclipse技术项目三个项目组成,具体包括四个部分组成--Eclipse Platform、JDT、CDT和PDE。JDT支持Java开发、CDT支持C开发、PDE用来支持插件开发,Eclipse Platform则是一个开放的可扩展IDE,提供了一个通用的开发平台。它提供建造块和构造并运行集成软件开发工具的基础。Eclipse Platform允许工具建造者独立开发与他人工具无缝集成的工具从而无须分辨一个工具功能在哪里结束,而另一个工具功能在哪里开始。

  Eclipse SDK(软件开发者包)是Eclipse Platform、JDT和PDE所生产的组件合并,它们可以一次下载。这些部分在一起提供了一个具有丰富特性的开发环境,允许开发者有效地建造可以无缝集成到Eclipse Platform中的工具。Eclipse SDK由Eclipse项目生产的工具和来自其它开放源代码的第三方软件组合而成。Eclipse项目生产的软件以 CPL发布,第三方组件有各自自身的许可协议。

       特性简介


  上图为Eclipse的软件界面,看上去有点象Jbilder,但是实际操作还是更象IVJ,毕竟还是由开发IVJ的原班人马主刀完成了Eclipse的开发。另外还值得一提的是Eclipse项目的参与者除了IBM以外,还有象Borland,Rational Software,RedHat,Merant等一大批业界姣姣者,这也为Eclipse的未来奠定了良好的基础。正所谓好酒不怕巷子深,Eclipse刚推出不久就创造了6个月内100万次的下载记录,还被业界推崇为工具集成平台的标准并夺得Jolt最佳IDE奖、JDJ编辑推荐IDE等殊荣。目前Eclipse联盟拥有12个成员,其中包括Borland、Fujitsu、IBM、MERANT、QNX Software Systems、Rational Software、RedHat、Serena Software、SuSE、Sybase、TogetherSoft和WebGain,此外,有超过175家的工具厂商已经或计划在Eclipse平台之上开发工具。那么Eclipse究竟是凭什么取得如此不俗的成绩呢?下面就分别从文件存放,开发环境,编译与运行,版本管理以及使用插件等方面对Eclipse的各种特性作一个简单的介绍,之后相信读者一定不会再怀疑Eclipse的能力了。

  大多IVJ的初学者都对找不到Java源代码感到非常不适应,因为IVJ把所有的源代码都存储到一个reponsitory库文件中,想要得到文本格式的源代码必须用Export功能从reponsitory中导出源代码。使用了reponsitory的IVJ对源代码的管理功能几乎达到极致,正是这一点使得许多程序员对IVJ钟爱有加。而Eclipse虽然是将源代码以文本方式保存,却仍然实现了IVJ对源代码管理的几乎全部功能,并且还增加了一些新的功能,这不能不说是Eclipse的一个亮点。

  在Eclipse的安装目录下会有一个workspace文件夹。每当新建一个项目,都会在该目录中产生和项目同名的文件夹以存放与该项目相关的全部文件。将已有的文件加入到一个项目中目前有三种方式:第一种是象在IVJ中的一样,用IDE的"文件"菜单中的"导入"功能将文件导入到项目中。这也是推荐的方式。第二种是从Windows的资源管理器中直接拖动文件到项目中。第三种就是直接将文件拷贝到项目文件夹中,然后在Eclipse的资源浏览窗口中选择项目或文件夹并执行从本地刷新功能。需要说明的一点是,项目文件夹可以放在计算机的任何位置,并且可以在Eclipse中用新建项目的方法将项目路径指定到已经存在的项目文件夹,然后在Eclipse中刷新即可。但要注意的是,任何项目文件夹建立或指定,目前都只能在Eclipse中用新建项目的方法来实现,即使是在缺省存储项目文件夹的workspace路径下新建立一个文件夹,在Eclipse环境中也是无法将它变成一个项目,也就是说,这个文件夹对Eclipse是不可视的。

  与IVJ一样,Eclipse开发环境也被称作工作台,主要由三部分组成:视图、编辑窗口和观察窗口。下图为工作台的关系结构略图:


  可以看出工作台包含多个视图,而每个视图又包含不同的窗口。每个编辑窗口有很大的共性,而且缺省情况它们都在同一区域中显示。所有文件的显示和编辑都包含在编辑窗口里。缺省情况下打开的多个文件以标签形式在同一个窗口中排列,可以用拖动方式将这些文件排列成各种布局。当有文件被加入到项目中后,在资源浏览或Java包浏览窗口双击文件,Eclipse就会试图打开这个文件:其中Eclipse内嵌的编辑器能缺省打开一些文件,如*.java,*.txt,*.class等。如果是其它类型的文件,Eclipse会调用操作系统相应的缺省编辑器打开,如word文档,PDF文件等。同时Eclipse也可以象IVJ一样用指定的编辑器打开相应的文件。Eclipse还提供了只显示所选单元的代码显示切换功能,这在编辑Java程序的时候可以以方法为单位进行编辑,不仅代码的显示更加简捷,而且还有助于编写封装性更好的类。

  浏览窗口和Java浏览窗口是观察窗口核心部分。前者和Windows的浏览器差不多,能浏览项目文件夹中的所有文件,后者用来浏览项目中的Java包,包中的类,类中的变量和方法等信息。在Java浏览窗口中可以通过用鼠标右键菜单打开层次浏览窗口,这个窗口非常实用,它能非常清晰的查看类的层次结构。类中的编译出错信息可以在任务窗口中查到,同时它也可以成为名符其实的任务窗口:向其中添加新的任务描述信息,来跟踪项目的进度。控制台则主要用来显示程序的输出信息。在调试程序的时候,会有更丰富的观察窗口来帮助程序员进行调试,如变量值察看窗口,断点窗口等等。

  观察窗口是任何IDE开发环境的核心,Eclipse也提供了丰富的观察窗口,不过要真正用好这些窗口恐怕还要经过一段时间的练习。
至于视图,实际是包括一个或多个编辑窗口和观察窗口。在开发环境的最左侧的快捷栏中的上部分显示的就是当前所打开的视图图标。视图是Eclipse的最灵活的部分,可以自定义每个视图中包含的观察窗口种类,也可以自定义一个新视图。在Eclipse的Java开发环境中提供了几种缺省视图,如资源视图、Java视图、调试视图、小组同步视图等等。每一种视图都对应不同种类的观察窗口。可以从菜单栏中的"打开透视图"看到与该视图对应的观察窗口。当然,每个视图的观察窗口都是可配置的,多样化的视图不但可以帮助程序员以不同角度观察代码,也可以满足不同的编程习惯。

  IVJ具有非常强大的调试功能,有多种跟踪方式,断点设置,变量值察看窗口等。这些在Eclipse中都也有提供。而且会根据所安装插件的不同而存在多种运行/调试程序的方式。

  Eclipse还提供了强大的个人版本管理机制,每一次被保存的更改都可以得到恢复。而且可以精确到每一个方法的版本恢复。操作也十分方便,在任何一个能看到所要操作文件的观察窗口都可以按照用户的需求找到相应的版本。强大的个人版本管理功能为程序员提供了更多的信心:只管编下去,因为任何不小心的错误都是可以恢复的。Eclipse缺省为版本管理工具CVS提供了接口,可以非常方便的连接到CVS服务器上。通过CVS版本管理,Eclipse可以为团队开发提供良好的环境。

  至于Eclipse最大的闪光点--强大的插件加载功能在文章开始就有详细的介绍,这里就不在赘述。

  小结

  正是由于Eclipse的种种优秀特性,使得Eclipse在众多整合型开发平台中脱颖而出。成为不少从事手机软件开发的程序员的首选开发工具。限于篇幅,本篇文章仅从多个方面对Eclipse作了一个大体的介绍,至于Eclipse软件的获取方式、环境配置方法等具体技术细节将在下一篇文章中进行详细介绍。

第二讲 Eclipse开发环境的安装与配置

引言

  在上一篇文章中介绍了Eclipse是一款非常出色和著名的开源项目。开放源代码软件是这样一种软件,它们在发布时附带了旨在确保将某些权利授予用户的许可证。当然,最明显的权利就是源代码必须可用,以便用户能自由地修改和再分发该软件。尽管大多数开发人员不会使用Eclipse来开发插件,或创建基于Eclipse的新产品,但是由Eclipse的开放源代码性质所决定,我们在使用Eclipse 时是完全免费可用的。只需登陆Eclipse官方网站www.eclipse.org就可以获得这款优秀的IDE。

  Eclipse的下载与安装

  进入Eclipse项目的主页后点击Downloads,将出现一个镜像列表,其中大多是欧美地区的,选择一个距离比较近的镜像点(这样速度能快些)并进入下载页,笔者选择的是台湾地区的一个镜像站点http://eclipse.cdpa.nsysu.edu.tw/downloads/。目前最新版本为3.0.1。一般Eclipse同时提供几个下载版本:Release,Stable Build,Integration Build和Nightly Build,建议下载Release或Stable版本,笔者用的是Release版本。进入该版本的下载页面后Eclipse提供多种操作系统的版本,读者可以根据实际情况下载相应的压缩包。如果使用的是是在Windows平台,需要下载的正确版本为eclipse-SDK-3.0.1-win32.zip。Eclipse支持多国语言,只要下载与SDK相应的多国语言包插件就可以实现软件的本地化。对于上述版本的SDK,相应的多国语言包插件版本为eclipse3.0.1-SDK-win-LanguagePackFeature.zip。

  安装Eclipse的步骤非常简单:只需将下载的压缩包按原路径直接解压既可,可以说是一款"环保"软件。由于Eclipse版本升级比较快,如果有了更新的版本,要先删除老的版本重新安装,而不能直接解压到原来的路径覆盖老版本。之后,将多国语言包解压并将解压出来的plugins文件夹和features文件夹去覆盖eclipse文件夹下的同名文件夹即可。如果当前操作系统的JRE环境安装正确无误,现在运行Eclipse.exe将会闪现如下所示的很酷的月蚀启动画面并进入其缺省界面。


  注意,这里的前提是JRE环境的安装正确无误,由于Eclipse本身是用Java语言编写的,而下载的压缩包中并不包含Java运行环境,因此需要用户自己另行安装JRE,并且要在操作系统的环境变量中指明JRE中bin的路径。如果上述设置不正确,Eclipse是无法正常运行的。


  Eclipse的缺省欢迎界面如上图所示,中间四个按钮分别是"概述"、"教程"、"样本"和"新增内容"。这几个按钮都是帮助性质的,用户通过这些按钮可以分别了解Eclipse的所有内容、Eclipse端到端的教程、样本代码和此发行版中的新增内容。位于界面右上方的是"工作台"图标按钮,点击将转入如下所示的工作台界面:


  关于这一界面,在上一篇文章中已有简单介绍,这里就不再重复,更详细的资料可参阅Eclipse联机帮助。由于有多国语言包插件的安装,使得软件界面为全中文界面,与Visual Studio的本地化不一样,Eclipse的联机帮助也全部实现了本地化,阅读起来是非常方便的。

  环境的搭建

  如果需要配置JRE,可以安装Sun 的JDK或IBM的JDK,应该安装1.3以上版本,推荐使用1.4以上版本,因为只有使用1.4以上版本的JDK才可以享受到新增的HotSwap功能对于调试带来的方便。笔者使用的是Sun公司的1.5.0版本的 JDK,可以从Sun公司官方网站http://java.sun.com免费下载。安装完成后,可以在添加/删除程序的已安装程序列表中看见"Java 2 SDK, SE v1.5.0"和"Java 2 Runtime Environment, SE v1.5.0"项目。

  到此为止,应该能够保证Eclipse的正常运行了,但我们的最终目的是开发手机应用程序,上述搭建的环境还不能满足开发所需要的要求。Sun于1999年6月推出了Java 2袖珍版(J2ME)来满足消费电子和嵌入设备的需要。J2ME是为了那些使用有限的能源、有限的网络连接(常常是无线连接)以及有限图形用户界面能力的设备开发的。它最初的目标是 16位或32位处理器,16 MHz时钟频率,512K或更少内存的设备。 显然,现在的手机正是J2ME的一个支持方向,J2ME的标准相当多,先简单介绍几个非常重要的概念:
CLDC(Connected limited device configuration,有限连接设备配置):这个配置定义了 Java应用程序接口以及支持手持设备的技术,就像Sun的文档中所描述的那样,"devices that you hold in your hand(你握在手中的设备)"。CLDC是为使用较小的存储容量的设备设计的,用于内存在128到 512K之间的消费电子设备,智能手机、Palm序列手持设备可能是这一领域的设备的最好的例子。

  MIDP(Mobile information devices profile,移动信息设备简表):第一个实现的简表,补充了CLDC并且提供应用程序语义和控件、用户界面、持久存储器、网络和用于移动电话的计时器、双通道呼叫器和其他无线电设备。类似于J2SE中的Applet框架,它提供了基于javax、microedition、midlet包的MIDLet应用程序框架。

  MIDLet:MIDP应用程序称为 MIDlet,为了创建一个MIDlet,就必须写一个扩展基本 MIDlet类的类。这有点类似常见的Applet或Servlet。MIDlets独有的东西是把多个MIDlet组成一个MIDlet套件的能力。这就允许MIDlet在一个单独的JVM环境中共享资源,比如一个数据库等等。

  为使用J2ME开发手机应用程序还必须安装J2ME SDK,常用的有Sun公司的J2ME Wireless Toolkit(WTK)。WTK提供了运行J2ME应用程序所需要的库以及模拟器等,通过它可以进行程序的编译、校验、运行。有关WTK的信息可查询如下网址http://java.sun.com/products/j2mewtoolkit。目前J2ME Wireless Toolkit共分三个版本:1.0.4、2.0和2.1。其中,1.0.4版只能开发MIDP 1.0程序,2.0版可以开发MIDP 2.0应用程序,2.1版则可以同时开发MIDP 1.0、JTWI(CLDC 1.0、MIDP 2.0、WMA 1.1,可改用CLDC 1.1或加入MMAPI 1.1)、自定义(用户可随意组合Configuration、Profile、Optional Package)三种环境。需要注意的是,并非版本越高越好,必须视需求不同而选择适当的版本,才能开发出可以在真机上运行的MIDP应用程序。这里选用的是WTK 2.1,可以从Sun公司官方网站免费下载,按默认方式安装该工具包并记下其安装路径以便以后在安装EclipseMe插件时使用。在成功安装完毕后将在添加删除程序的已安装程序列表中看到"J2ME Wireless Toolkit 2.1"。

  这里之所以选用Sun公司的J2ME Wireless Toolkit产品,是因为这样开发出来的手机软件可以具有更大的通用性。如果用户只是出于为自己的爱机DIY应用软件的目的而非进行商业化的通用软件开发,则完全可以根据自己使用手机的型号从相应厂商网站下载与之对应的J2ME SDK,这样开发出来的手机软件能够以更优的方式在真机运行。目前,一些大的手机厂商开发的特定J2ME SDK主要有:Nokia的Nokia DEveloper's Suite与Nokia各款手机专属SDK;SonyEricsson的SonyEricsson J2ME SDK;Siemens的Siemens Mobility Toolkits等。例如,笔者使用的机型是SonyEricsson T628,相应的J2ME SDK便是SonyEricsson J2ME SDK 2.0.0_Beta版,其安装过程与前面介绍的J2ME Wireless Toolkit 2.1的安装过程类似,也同样需要记下其安装路径以备后用。如果需要更加详细的内容,请登陆手机厂商的网站查阅相关资料。

  下一步的工作

  本篇文章主要对Eclipse的工作环境进行了安装与配置,配置后的Eclipse将可以用来开发一些基本的应用程序,但离手机软件的开发还是有一段距离。下一篇文章将对手机软件开发所要用到的EclipseMe插件的安装过程进行介绍,并完成J2ME开发手机软件的全部准备工作。

第三讲 J2ME插件EclipseMe的安装

      引言

  在上一篇文章中对Eclipse的运行环境作了配置,同时也对J2ME开发作了简要的介绍。通过上述介绍,读者应该理解:对手机应用程序的开发实际也就是进行J2ME项目的开发。虽然在上一篇文章对环境进行了配置,使其能够支持J2ME的开发,但是目前安装的Ecilpse作为一个Java应用的IDE,使用是非常方便,可是对于J2ME的开发支持还是远远不够的。为此,本文将为Eclipse安装一个开发J2ME程序的插件EclipseMe,以完成开发手机应用程序的最后一项准备工作。

  EclipseMe插件的获取

  目前EclipseMe的最新版本为0.5.5(eclipseme.feature_0.5.5_site.zip),可以登陆SourceForge网站http://eclipseme.sourceforge.net/免费下载,EclipseMe插件的版本更新速度较快,用户可以通过该网站及时获取最新版本的EclipseMe插件。

  进入SourceForge网站后点击Downloads进入产品下载页面,该页面列有全部版本的EclipseMe插件及部分版本的源程序代码。点击需要下载的eclipseme.feature_0.5.5_site.zip,将弹出一个下载镜像列表页面,可以从中选取一个距离比较近的镜像站点进行下载,不过列表中基本都是欧美地区的站点,速度也都不是很快。下载的插件大小为4240KB。

  EclipseMe插件的安装

  对于EclipseMe 0.5.0版本及更早版本的安装,可以下载后直接将其解压到Eclipse安装目录下的plugin文件夹下即可很方便的完成对插件的安装。但是到了0.5.5版本以后,EclipseMe的安装方式发生了较大变化,再用以前的方法将不能成功安装插件。下面将给出EclipseMe这一最新版本插件的具体安装过程:

  首先进入Eclipse界面并通过其"帮助"菜单下的"软件更新"弹出的"查找并安装……"菜单项弹出如下所示的"安装/更新"对话框:


  在选中"搜索要安装的新功能部件"后进入下一步安装界面:


  开始在"要包括在搜索中的站点"列表中只有"Eclipse.org更新站点"一项,为了将下载的插件安装到Eclipse,点击"新建本地站点……"按钮,这将弹出一个浏览窗口,从中指定EclipseMe压缩包的当前解压路径。虽然Eclipse对此并没有作特殊说明,但根据笔者的经验,最好将EclipseMe压缩包解压到一个路径名中不包含汉字的文件夹下,如"E:/EclipsMe/"下,否则可能会在安装过程中出现一些奇怪的小插曲而妨碍安装过程的顺利的进行。在上述操作顺利执行完毕之后,将会在站点列表中出现以当前指定目录为名称的站点项目。选中该项目前面的复选框,展开该树型结构项目,可以看见其子项EclipseME也被同时选中(见上图)。这时可以进入下一步操作:


  选中"EclipseME"前面的复选按钮,继续下一步:


  这个界面相信不用多说,点选接受版权协议即可,进入最后一个页面:


  在这个页面中,将指定Eclipse插件要安装到的路径,可以点击"添加站点"选择其他路径,不过最好还是安装到Eclipse的安装目录下,确定点击完成即可。之后,系统会弹出如下界面以提醒用户目前安装的软件没有经过数字签名。这主要是由于目前EclipseME插件包没有通过数字签名而已(维持该签名需要400美圆/年)因此对于这个提醒不用担心,继续点击安装按钮以完成程序的安装。


  随后,将随着进度条的前进开始文件安装,在安装完成后将看到如下所示的对话框请求用户重新启动工作台。点击"是"按钮将自动完成重启。

      

       对EclipseMe插件的配置

  为查看EclipseMe插件是否成功安装进来,可在重启Eclipse后点击"窗口"菜单下的"首选项"菜单项,将弹出如下所示配置窗口:


  只要能在左侧窗口看到J2ME项就标明EclipseMe插件已经成功安装。为了使新安装的EclipseMe插件能够正常工作,需要对其进行配置。展开J2ME项目,选中Platform Components子项,在右侧窗体将同步显示其详细配置。在Wireless Toolkits项目上单击鼠标右键,通过弹出的Add Wireless Toolkit菜单启动如下窗口:


  在该窗口点击"浏览"按钮,在弹出的浏览对话框中指定先前安装的Wireless Toolkit路径。如果路径指定正确且Wireless Toolkit也安装正确的话,此时EclipseMe将自动检测出该目录所安装的Wireless Toolkit的版本,并显示在编辑框的下方(对于本例,显示的版本为"J2ME Wireless Toolkit 2.1"),否则,说明此前安装的Wireless Toolkit有问题,需要重新安装。在点击完成按钮后,右侧的配置窗体中将显示该Wireless Toolkit所支持的一些特性,如下图所示。如果用户是针对某一机型的手机进行开发,可以重复上面的步骤将其他厂商的无线开发工具包如sonyErisson J2ME SDK添加其中。


  小结

  到此为止,对EclipseME插件的配置算是大功告成了,虽然EclipseME 0.5.5的安装比早期版本要复杂一些,但用户仍可深刻体会到Eclipse最富有魅力的插件体系结构所带来的几乎无限的扩展能力。随着EclipseME的成功安装与配置,开发手机应用程序的所有前期准备工作也都准备就绪了。接下来的文章将开始对J2ME应用程序的开发进行介绍。

 

 

 

 

 

 

 

 

 

 

 

原创粉丝点击