您的位置:首页 > 编程语言 > Java开发

搭建开发平台—Eclipse

2005-07-04 14:45 211 查看
      搭建开发平台—Eclipse  
 

12.1       初识Eclipse、EclipseME

Eclipse是一个开发源代码的、基于java的可扩展开发平台。Eclipse相关的许可证是大多数基于Common Public License (CPL),CPL是一个为Open Source Initiative (OSI)所认可的许可证。由于Eclipse Foundation的建立,Eclipse的许可证将逐渐趋向于使用Eclipse Public License (EPL),EPL是一个与CPL相类似的许可证,正在进行OSI的认证工作。 作为当今最流行的java开发IDE之一,java社群使用Eclipse以及基于Eclipse技术而来的IBM Websphere的开发者已经超过了半数。 Eclipse本身只是一个框架和一组响应的服务,并不能够开发什么程序。在Eclipse中几乎每样东西都是插件,实际上正是运行在eclipse平台上的种种插件提供我们开发程序的各种功能。同时各个领域的开发人员通过开发插件,可以构建与Eclipse环境无缝集成的工具。eclipse的发行版本都已经带有最基本的插件,方便了开发人员。举个例子:IBM Websphere Studio,是IBM的一套java IDE,其本质上就是Eclipse框架加上IBM开发的多种服务插件构成的。 你可以在http://www.eclipse.org/downloads/index.php 下载到Eclipse的解压安装文件、语言包以及许多实用工具插件。本文写作的时候最新版本是Eclipse SDK 3.1 M5a。不过,在这里我们提醒大家,Eclipse并不是版本越新越好,新版本往往有一些难以解释的bug,而且一些插件提供商可能还没有来得及提供与之配套的版本。本文将采用Eclipse-SDK-M3.0.1 为大家演示。 既然Eclipse在java开发中如此重要,那么我们能否使用Eclipse开发手机应用程序呢?是的,这个答案就是EclipseME。 EclipseME作为Eclipse一个插件,致力于帮助开发者开发J2ME应用程序。EclipseME并不为开发者提供无线设备模拟器,而将各手机厂商的实用模拟器紧密连接到Eclipse开发环境中,为开发者提供一种无缝统一的集成开发环境。 EclipseME为我们提供了如下的具体功能:l         Multiple wireless toolkit support l         Wireless toolkit preferences l         Platform component and definition support l         Create new J2ME Midlet Suite Project l         Create new MIDlet l         Java Application Descriptor (JAD) editor l         Automatic incremental preverification l         Eclipse launch support for Emulator l         MIDlet debugging support l         JAR and obfuscated JAR packaging l         Over the air deployment testing server l         Export Antenna build files l         Automated MIDlet signing 你可以在http://www.eclipseme.org/上得到免费下载的EclipseME,本文写作时的最新版本是0.9,同样出于稳定的考虑,我们在这里选用eclipseme.feature_0.5.5_site.zip来为大家演示。eclipseme的作者很勤奋,更新频繁,读者可以等待即将推出的1.0这个稳定版本。 除了Eclipse与EclipseME之外,你还需要java运行环境和一些手机模拟器来完成整个搭建工作。以下是本节所需的工具列表 (按安装顺序):
工具下载地点
JDK 1.4.2http://java.sun.com/j2se/1.4.2/download.html
Eclipse M3.0.1http://www.eclipse.org/downloads/index.php
Eclipse 3.0.X 语言包http://www.eclipse.org/downloads/index.php
EclipseME 0.5.5  http://www.eclipseme.org/
Sun WTK V2.2http://java sun.com
Nokia Developer's Suite 2.2(Nokia开发者套件)http://www.forum.nokia.com/main/0,6566,034-2,00.html

12.2       搭建Eclipse移动开发环境

搭建EclipseME下的安装平台需要三个步骤。

12.2.1 Eclipse的安装与汉化

搭建Eclipse的第一个步骤就是要安装JDK,本文写作时,JDK的最新版本是5.0,但是用JDK5.0 + Eclipse开发手机程序有很多问题。所以目前的J2ME开发者基本上还是采用的JDK1.4.2,安装很简单,这里就不赘述了。 Eclipse的安装过程更加简单,事实上,这仅仅是一个解压缩的过程。将你下载的Eclipse SDK压缩包eclipse-SDK-M3.0.1拷贝到你的目标目录下,我们这里以D盘根目录为例,然后解压到当前文件夹。 先不要急着运行你的Eclipse环境,把Eclipse语言包NLpack-eclipse-SDK-3.0拷贝到相同路径(D盘)下解压缩,再运行,Eclipse将首先完成第一次启动配置,包括相应的汉化工作。接下来指定你的工作空间就可以了。 

 欢迎界面之后,就是Eclipse漂亮的工作界面!

12.2.2 安装EclipseME插件

在Eclipse中选择“帮助 / 软件更新 / 查找并更新”,在弹出对话框中选择“搜索要安装的新功能部件”,在“新建已归档站点”的弹出框中,指定EclipseME压缩文件eclipseme.feature_0.5.5_site.zip。

 点击确定后可以看到Eclipse已经搜索到了相应的插件。

选中EclipseME的复选框,接受协议,忽略功能部件验证,最后重新启动控制台,EclipseME插件就已经顺利的安装好了。



 中间会有一个步骤需要确认EclipseME没有数字签名。我们引用作者的话说明这是为什么:“At present the EclipseME package is not digitally signed. (Maintaining the keys required to digitally sign JAR files costs $400+/year. If anyone is interested in funding EclipseME to this extent, we'll be happy to sign the JAR files.)” 

 为了验证EclipseME确实已经安装上了,我们在工作台重启之后,打开“窗口 / 首选项”中,我们可以看到一个J2ME选项,这时,Eclipse移动开发的第一步,我们已经成功的迈出了! 注意:安装好EclipseME之后,我们要对原有的Eclipse配置做一点小小的改动。由于移动开发时我们需要首先启动手机模拟器,那么在Debug模式的Eclipse默认设置不等到模拟器启动就会失败。 修改这点很简单,在首选项的“java / 调试”中,把默认设置更改为如下图所示,调试模式就可以顺利的启动了。

  

12.3       加载厂商模拟器

EclipseME为我们提供了一个集成开发环境,但仅仅这些是不够的,我们还需要集成一种或多种手机模拟器来进行程序测试工作。目前,各大手机厂商都拥有多种型号的手机模拟器,Sun也提供了一种通用模拟器。这里我们采用Sun WTK和Nokia Developer's Suite 两种工具包来为大家演示。 

12.3.1 加载Sun WTK v2.2

WTK(Wireless toolkit)是Sun为无线开发者提供的一个无线开发实用包。它拥有多个手机模拟器,我们在这里将WTK绑定到EclipseME,这将大大提高开发者的工作效率。当然,我们得先安装WTK。安装过程也很简单,系统会自动检测到当前JDK所在路径,并引用该JDK。 下面我将WTK绑定到EclipseME。找到路径“窗口 / 首选项/ J2ME / Platform Component”,右键单击对话框右侧的wireless toolkit,我们可以添加当前系统已有的模拟器。在单击“浏览”按钮之后,我们选定WTK的安装目录。

  EclipseME会自动分析出当前模拟器类型,并显示出来。

    确认之后,我们发现Platform Component一栏上添加了关于WTK的许多配置信息,此时,WTK已经被我们集成到EclipseME上了。

 

12.3.2 加载Nokia Developer's Suite 2.2

Nokia拥有多种型号的手机的模拟器,为了统一管理,它推出了用于集中管理这些模拟器的管理软件Developer's Suite。Developer's Suite本身是一个可以独立运行的工具包,就像WTK一样。不同的是Developer's Suite不需要EclipseME就可以和Eclpise集成。为了统一开发环境,这里主要介绍的是如何用EclipseME加载它所提供的模拟器。Developer's Suite功能较多甚至包含了地图编辑器和短信服务器,关于他们的详细内容,请参考Nokia开发者论坛。 首先,从Nokia论坛上下载安装文件,如果你的电脑中有旧版本的Developer's Suite,需要首先卸载旧版本。Nokia的开发包是提供给Nokia论坛的开发者使用的。所以,在接受安装协议之后,你需要提供你在Nokia论坛的用户名和安装序列号。

 第一次安装没有序列号也不用担心,输入一栏中什么都不用填直接忽略过去,Developer's Suite会让你选择一种代理联网模式(如果没有用代理服务器上网就选择no proxy),然后要求你输入你在Nokia论坛的用户名和密码进行注册。注册成功之后,用户名对应的序列号就会被发送到你的邮箱中,查收一下,就可以继续了!(有的时候Nokia发送序列号的行为会很慢,没办法,只有等等了J)

 

 当我们完成认证之后,会发现Developer's Suite 2.2提供了多种安装方式,包括独立安装或者直接与Eclipse集成。 

 如果选择了与Eclipse集成,那我们就要提供当前Eclipse的安装目录。

 无论是否是集成安装,在重启系统之后,我们都要以与添加Sun WTK相同的方法,在“首选项 / J2ME / Platform Components”中选中Developer's Suite的安装目录,确定之后可以看到,Wireless Toolkits中除了WTK,Nokia Developer Suit也被列在其中了!

 现在,我们终于可以用Eclipse开发第一个J2ME程序了!J

12.4       使用Eclipse进行无线开发

12.4.1 创建工程

在完成了环境搭建后,我们就可以在Eclipse中用我们所熟悉的方式开发无线应用程序。下面让我们完成一个经典Hello World程序。这里,我们选择使用Sun WTK 2.2作为模拟器。 在Eclipse工作台上的新建选项中,选择J2ME Midlet Suite,首先创建一个MIDP Suit。

在下一步中,我们可以看到有多种模拟器设备可供选择,选定“J2ME Wireless Toolkit 2.2 MIDP 2.0 Platform”后,继续下一步,直至完成。

此时,在包资源管理器中,Hello World套件项目已经被建立起来,我们注意到,Eclipse为我们自动绑定了J2ME library运行库,并创建了jad等配置文件。


 

12.4.2 创建MIDlet文件

完成项目创建后,让我来创建一个MIDlet类文件,它是整个套件的入口文件。也是Hello World的关键类。 

 选择J2ME Midlet之后,我们可以看到系统自动继承了MIDlet超类,请确保三个默认方法复选框被选中,输入类名,完成创建。

 打开刚刚创建的Hello World,我们发现Eclipse已经自动帮我们生成了程序主体,继承方法以及一些注释。 

如此之多的重复工作已经被Eclipse完成,以至于我们只需要在相应的方法中填写自己的实现过程就可以了。 首先在Hello World代码中导入界面类import javax.microedition.lcdui.*;然后,我们仅仅需要用以下代码覆盖原先的构造函数:public HelloWorld() {   super ();   // TODO 自动生成构造函数存根   Form form = new Form("Hello World");   form.append("Welcome to J2ME World!");   Display.getDisplay(this).setCurrent(form);}如此简单的几步,第一个J2ME就完成了!  

12.4.3 执行MIDlet

在Hello World项目上单击右键,选择“运行…”,   

 在弹出对话框中,在Wireless Toolkit Emulator中新建一个配置,指定刚刚Hello World为入口文件,应用设置,最后运行。

 可以看到,Eclipse自动启动了WTK的模拟器,显示出了Hello World的欢迎界面! 


 

12.4.4 打包与混淆

打包,就是为套件生成jar文件,用来发布项目。右键单击目标项目,可以在J2ME选项中选定Create Package,生成jar包。

 混淆,就是为了保护版权,增加别人反编译阅读源代码的难度;同时可以减少jar包的体积。在J2ME选项中也能够找到创建混淆包的选项。但首先,需要指定当前系统中混淆器的安装位置。 我们这里采用了开源免费的Proguard3.0.1作为混淆器。在“首选项 / J2ME / packaging / obfuscation”中,通过浏览指定Proguard3.0.1的安装(解压)路径。

 应用保存设置之后,就可以成功的创建混淆包了。 注意:很多初次使用的朋友会发现即便指定路径之后,依然不能顺利创建混淆,并且往往得到类似下面的警告信息。

 出现这个错误的原因与JDK路径有关。我们在安装了JDK之后(以1.4.2为例),系统环境变量中存在两种JDK,一种是JDK SDK,一种是运行时环境(runtime)。Eclipse在解压安装时选择的是后者,而启动Proguard3.0.1需要的是前者。 修复这个问题很简单,在“首选项 / java / 已安装的JRE”中把你的JRE从指向运行时更改为指向SDK(即JDK的安装目录)



 此时JRE将拥有完整JDK库文件,再次运行创建混淆,我们会发现在Hello World子目录deployed中包括了HelloWorld.jar,HelloWorld_base.jar, HelloWorld_base_obf.jar。他们分别是混淆后,混淆前等不同版本的jar包。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息