`
java-mans
  • 浏览: 11738081 次
文章分类
社区版块
存档分类
最新评论

使用“月蚀”进行J2ME开发

 
阅读更多

使用“月蚀”进行J2ME开发<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

by 蜡笔小刀

使用了近一个月的Eclipse来做J2ME开发,越来越觉得他方便好用。即时语法检查不但预先避免了很多错误,而且在修改代码时能迅速定位到受影响的代码。修改类名类成员名能自动修改所有关联的代码。Eclipse还提供了多种视图(perspective)方便的管理工程,并可以同时打开多个工程。其他的一些特点如支持代码折叠的编辑器,自动生成代码,格式化代码,自动添加Javadoc注释等也丝毫不逊于其它的开发工具。当然他还有非常漂亮的界面。对了,他还支持CVS!

如果你还在使用WTK,正在考虑是否选择一款JBuilder这样的IDE,我强烈建议你一定要试一试Eclipse —“月蚀”。

下面对在一台完全没有Java开发环境的计算机上安装配置Eclipse+EclipseMe+WTKJ2ME开发环境做一个介绍。

一、安装

1. 安装JDK。不用多说了。

2. 安装WTK。也不用多说了。

3. (如果需要的话)安装厂商提供的模拟器。安装的过程中应该会让你选择WTK的安装目录(Nokia的就会,其他的没用过)。我建议如果你有安装好的模拟器(比如在另一台机器上),可以直接将整个目录拷贝到WTKdevice目录里面。

4. (如果需要的话)安装proguard。如果直接使用WTK(2.0以上版本)开发,我们只要将proguard.jar拷贝到WTKbin目录里面就可以使用了。但如果要在Eclipse中使用proguard,请使用完整的proguard-proguradzip包解压到一个目录就行。

5. 安装Eclipse。我使用的版本是2004625号发布的3.00版。安装非常简单,只要下载Eclipse的压缩包然后解压就可以了。

6. 安装EclipseMeEclipse本身并不支持J2ME,但是Eclipse强大的扩充性可以使他成为适应任何语言的开发环境-只要开发相应的插件即可。EclipseMe就是Eclipse的一个J2ME插件。安装同样是只要直接解压。将Eclipseme解压到Eclipseplugins目录下面就可以了。

二、配置

安装完毕,打开Eclipse。它启动的比较慢,不过你可以趁这个时间去泡杯茶或咖啡。如果是第一次运行Eclipse,它会让你选择一个workspace目录,以后用Eclipse建立的工程都会放到这个目录里面。如果你原来是使用的WTK,你不妨将这个workspace设为WTKapps目录,这样就可以把你原来的工程转移到Eclipse中。不过,Eclipse并不会将workspace中的子目录直接视为自己的工程,怎样将WTK建立的工程转化为Eclipse的工程我下面再说。

1. EclipseMe基本设置

EclipseMe的安装目录中带有文档,指导你一步一步设置EclispeME。不过看了我写的这篇文章,你就不必再去看那些E文了

Eclipse 菜单中选择Window->Preferences,打开Preferences窗口,如下图:

其中的J2ME选项是安装了EclipseME插件后才会出现。右边有三个目录位置可以设置。deployed是打包后的jar文件存放位置(打包时jad文件也会被拷贝一份放到deployed目录中),res是存放资源的地方(相当于WTKres目录),verified是通过预审核的class文件存放的地方。一般这三个目录都不用更改。

下面要进行J2ME平台定义。我们知道J2ME平台由Device ConfigurationProfile构成。配置Eclipse时我们需要选择不同的DCProfile组成我们需要的开发平台。其实就是选择一些特定的包和APIEclipseME直接使用WTK提供的开发包,因此需要为EclipseME设置WTK的安装路径。在刚才的Preferences窗口的J2ME选项下面选择平台组件(Platform Components,右边打开的选项页如下图所示:

WireliessToolkits上单击右键,在弹出菜单上选择Add Wireless Toolkit,会弹出一个对话框让你选择WTK的安装路径,将刚才安装WTK的路径选上即可。如果你的WTK版本在2.0以上的话,你就拥有了Midp1.02.0两个平台定义。

但如果要使用厂商提供的开发包怎么办?你可以直接在选择WTK的时候指定厂商的WTK而不是Sun的标准WTK,或者可以通过添加Profiles的方法将厂商提供的开发包添加上去,然后在Add Platform Definitions的时候选择这个Profile。如下图:

(添加Nokia 7210 Profile

(添加Nokia 7210平台定义)

2.改变Eclipse设置

EclipseMe的文档上说,由于WTK的某些怪癖,如果想用Eclipse调试Midlet的话就要对Eclispe的默认Java-Debug设置做些调整。最终的设置如下图所示:


3.配置ProGuard

Preferences窗口J2ME->Obfuscation选项页中,设定刚才安装的proguard的路径即可。

4.其他设置


上图的设置指定了源程序目录和class文件输出目录。如果使用默认的设置,对于从WTK转过来的工程就会显示找不到包的错误。最好设置成上图所示。

三、 使用

1. 建立Midlet SuiteMidlet

一个Midlet Suite就是一个工程,选择菜单 New->Project->J2ME Midlet Suite,按步骤指定工程名,选择平台定义(WTK Midp1.0/2.0或自己定义的如上面的Nokia7210)。Finish之后一个新的工程就建好了。Eclipse会在你的workspace目录中建立一个该工程的子目录。

建好工程后,选择菜单New->Other->J2ME(J2ME Midlet),会有对话框帮助你建立一个MIDlet子类。选择完成后,会自动生成一个midlet的代码框架。

2. WTK的工程转为Eclipse工程

先将该工程的目录拷贝到Eclipse指定的workspace目录中,(如果你已经直接将WTKapps目录设定为workspace目录就不用了),然后建立一个新的Midlet Suit,名字要和原来的工程目录名完全一样。完成后,在EclipsePackage Explorer中右键单击该工程,在弹出菜单中选择J2ME->Convert to J2ME Midlet Suit即可。

3. 打包与混淆

EclipsePackage Explorer中右键单击工程,在弹出菜单中选择J2ME->Create Package即可打包。如果已经设置了ProGuard的路径,选择Create Obfuscated Package即可混淆打包。生成的jar文件会被放到deployed目录中,该目录中还会有几个jar和其他一些文件,但我们不用去管它。

如果你没有更改一个设置,打包的时候应该会出现"Could not find jar tool executable”的错误。如下图所示,将原来默认的操作系统自带的jre去掉,添加上你的JDK安装目录即可。

4. 调试与运行

工具条上的“虫子”和绿色箭头分别用来启动调试和运行。不过在这之间你要为每个工程进行调试/运行的配置。主要要注意的就是选择合适的模拟器和选择Midlet(如果你还没有打包却选择按over the air方式运行是会有错误的)

基本的设置就是这样的了(也许会有些遗漏),如果还有问题请参考EclipseMe的文档,特别是faq.html可能会解答你很多的问题。不过还有一点要说一下,Eclipse运行比较慢(特别是调试的时候),所以最好优化一下你的电脑并且在运行Eclipse时不要开其他特耗资源的软件。

ps:我还没有办法将Moto的模拟器整合到Eclipse中,哪位知道的请指点一下。

分享到:
评论

相关推荐

    模仿月蚀的效果模型,源代码完全

    标题中的“模仿月蚀的效果模型”指的是一个编程项目,目的是通过代码来模拟月蚀的过程。月蚀是天文学中的现象,当月球进入地球的阴影区域时,我们可以观察到月球表面逐渐被遮挡,呈现出不同的阶段。在计算机编程中,...

    Eclipse入门—使用指南及开发Eclipse插件

    ### Eclipse入门—使用指南及开发Eclipse插件 #### 一、Eclipse简介与基本使用 Eclipse是一款由IBM发起并捐赠给开源社区的强大集成开发环境(Integrated Development Environment,简称IDE),自2001年IBM宣布将其...

    Google Android程序设计指南-源码

    Android应用程序采用Eclipse (月蚀) 开发集成环境为其开发平台,您可以参考本书的第二章先了解如何安装Eclipse后,再依照下列步骤汇入示范源代码。 Step 1. 汇入示范源代码 在Eclipse开发集成环境的菜单中,选择File...

    KaKaoCampus:为 KAKAO 展览

    开发环境 A. 使用的计算机:Mac OS X ...使用Kakao ID登录后,登录用户管理信息,对大学生进行身份验证 执行 KakaoStroyLoginActivity (intent-filter =&gt; action "android.intent.action.MAIN") 执行KakaoStorySi

    万年历使用java库

    在IT行业中,开发一款能够处理日期和时间的万年历应用是常见的需求,尤其是在涉及到中国传统文化元素时,如干支纪年、生肖、星座等。Java作为一种广泛应用的编程语言,提供了丰富的库来支持这类功能的实现。本篇将...

    rating:用于学习 Vaadin、CDI 和 JPA 的研讨会演示应用程序

    这是一个用于对会议演示进行评级的简单应用程序。 虽然该应用程序可以工作、可供多个用户使用并保留其数据,但它只是一个为学习而构建的示例应用程序。 以下是从开发人员的角度来看该应用程序的一些功能: 全栈 ...

    dcop-algorithms-old:分布式约束优化问题中使用的局部算法框架

    DCOP的算法 ... 要生成一个Eclipse项目,在SBT提示符下使用“月蚀”命令,然后按照说明中的“信号收集”自述的“如何在Eclipse中开发”部分。 笔记 提交作业的扭矩或SLURM主机之前,当务之急是要在S

    UFC-ES-RS_LinhaDeProdutoDeSofware_VendaDeIngressos:遵循软件产品线的概念,我们开发了一套基本的系统,这些系统具有一定的共同特征,满足某个细分市场(在线售票)的需求,并以相同的基础(核心)

    遵循软件产品线的概念,我们开发了一套基本的开源软件系统,这些系统具有一定的共同特征,满足某个细分市场(在线售票)的需求,并在相同的基础上开发(核)。 组件和软件作为一个整体很容易定制。 塞阿拉联邦大学...

    NeedForCodeOld:L3年项目

    月蚀月神: 帮助&gt;安装新软件: : 检查 e (fx) 剪辑 - 安装 &gt; e (fx) 剪辑 - IDE 让自己被安装带走 Eclipse开普勒: 帮助&gt;安装新软件: : 检查 e (fx) 剪辑 - 安装 &gt; e (fx) 剪辑 - Kepler 让自己被安装带走 ...

    NeedForCode:测试部署git

    月蚀月神: 帮助&gt;安装新软件: : 检查 e (fx) 剪辑 - 安装 &gt; e (fx) 剪辑 - IDE 让自己被安装带走 Eclipse开普勒: 帮助&gt;安装新软件: : 检查 e (fx) 剪辑 - 安装 &gt; e (fx) 剪辑 - Kepler 让自己被安装带走 ...

    tdd-buildautomation-ci-book-examples

    测试驱动的开发,构建自动化,持续集成(与Java,Eclipse和好友) 该存储库包含指向本书示例的单个存储库的链接。... 月蚀 第JUnit章 第TDD章 本章代码覆盖率 章突变测试 第章Maven 章嘲笑 章Git 本章持续

    逼真的CSS3日食动画特效

    在这个日食动画中,开发者可能定义了从满月到月蚀再到恢复的多个关键帧,通过`@keyframes`规则来定义这些状态的变化。 ```css @keyframes eclipse { 0% { transform: scale(1); } 50% { transform: scale(0.1); }...

    maven3.2.2 eclipse插件 离线包

    Eclipse是一款广泛使用的Java集成开发环境,而Maven的Eclipse插件则将Maven的功能无缝集成到Eclipse中,使得开发者在IDE内部就可以进行Maven相关的操作,如编译、测试、打包等。 "Maven 3.2.2"是Maven的一个稳定...

    小学六年级数学PPT课件.pptx

    1. **日蚀与月蚀现象**: - 古代与现代对日蚀的理解差异:古代人们将日蚀解释为“天狗食日”,而现代科学解释为日蚀是地球、太阳和月亮排列成直线,月亮恰好位于地球和太阳之间,遮挡了太阳光,形成了日蚀。 - ...

    css3实现天狗食月特效.zip

    ”这句话表明,开发者使用了CSS3的高级功能,如伪类、过渡(Transitions)或者关键帧动画(Keyframe Animations),可能结合了形状(Shapes)、渐变(Gradients)等元素,来模拟月蚀的视觉效果。这种效果通常会包含...

    DOTA-6.69C-AI.doc

    - **月蚀技能增强**:A杖版本的月蚀技能对单个目标的最大月光数量由5提升至6,进一步增强了该技能的伤害输出能力。 #### 八、变体精灵(Io) - **变体打击伤害类型变更**:变体打击由物理伤害变更为魔法伤害。 - *...

    eWeather HD Pro 7.9.0.apk

    您可以将当前年份的天气与去年的天气进行比较。 eWeather HD有一个晴雨表。图表显示过去和未来24小时的大气压力变化。当气压计检测到压力变化导致头痛时,将显示警告。 此应用程序的独特功能是天气时钟拨号。这是...

    作业_matlab_控制_源码

    3. **yueshu.m**:根据命名,此文件可能是“月蚀”或“约数”的拼音缩写,但它更可能与某种控制算法或函数相关。在控制领域,这可能是指某种特定的控制器设计,如PID控制器或者其他优化算法。研究这个文件可以帮助...

    科普知识竞赛.pdf

    1. **月蚀**:月蚀发生时,地球位于太阳和月亮之间,地球的影子投射到月球上,形成月蚀现象。 2. **网球大满贯**:网球运动员李娜在法国公开赛(法网)中赢得了大满贯冠军,这是四大网球公开赛之一,另外三个是...

Global site tag (gtag.js) - Google Analytics