`
Jerke
  • 浏览: 13048 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
最近访客 更多访客>>
社区版块
存档分类
最新评论

使用Eclipse和BlackBerry JDE开发黑莓应用程序

阅读更多

Eclipse中搭建好黑莓开发环境后,使用了快一周了,感觉还不错,想起之前的曲折,还是很有成就感的,呵呵。所以想把自己搭建的过程写下来,给同样和之前的我一样存在困惑的朋友们,希望能给大家一点帮助吧。

关于开发环境,我尝试过几个,直接用BlackBerry JDE的,Eclipse下的,还有NetBeans的,甚至还想过使用WTK。因为之前一直想把LWUIT运行在黑莓上,所以看过的环境搭建的文章基本上都是围绕LWUIT的。东一榔头西一棒槌的,最后终于发现很多评论说是LWUIT的运行速度是个问题,所以一下狠心——放弃。于是就把目标定在BlackBerry的环境搭建上。

但是黑莓的开发环境BlackBerry JDE真的很不好用,像我这种粗心大意的,写出来代码后,没有智能检测,结果肯定是BUG一堆。我不想挑起EclipseNetBeans的争论,个人的经验还是感觉Eclipse比较好用,配合BlackBerry JDEJDWP,利用模拟器调试也很方便。我一般都是同时打开EclipseBlackBerry JDEJDWP,还有黑莓开发文档,Eclipse用来写代码、编译以及调试,BlackBerry JDE用来看黑莓自带例子(呵呵,还得学习人家的代码啊)以及查看自己程序中都使用到了哪些敏感API(以便把这些代码用其他的方式实现,签名不是太贵,而是不容易买啊,要信用卡买……),JDWP用来启动模拟器。

上面这些都是一点使用的小经验,下面具体说下我搭建的过程。

其实也是根据网上的一篇文章来搭建的,作者是汪晶(Hoperun),原文地址没有办法找到了,因为我是下载的PDF,而且因为已经设置好了,自己也比较懒,做图片比较麻烦,所以就直接使用PDF中的图片了,作者如果觉得欠妥,我马上改过来。我基本上是按照上面的步骤设置的,只是软件的版本有些不同。

这里想先首先说明一下,我按照《BlackBerry应用程序开发者指南》第二章中的《使用Eclipse开发环境》设置,并不能成功,不过可能是我某个地方遗漏或搞错了吧,大家可以试试,成功的兄弟喊一声!

开始吧!

 

准备工具

1  JDK 1.6.0_03

2  Eclipse 3.5

3  BlackBerry JDE 4.5.0

4  Bb-ant-tools-0.7。(最新版本请到http://sourceforge.net/projects/bb-ant-tools/files/

 

环境搭建

一、安装JDKBlackBerry JDEEclipse

听说JDK安装完后不用设置环境变量也可以正常运行,我还是乖乖地设置了,保险嘛,也费不了多少时间。下面是具体的内容:

CLASS_PATH

.;C:\Program Files\Java\jdk1.6.0_13\lib\tools.jar;

C:\Program Files\Java\jdk1.6.0_13\lib;

C:\Program Files\Java\jdk1.6.0_13\lib\dt.jar;

C:\Program Files\Java\jre6\lib;C:\Program Files\Java\jre6\lib\rt.jar

 

JAVA_HOME

C:\Program Files\Java\jdk1.6.0_13

 

Path

C:\Program Files\Java\jdk1.6.0_13\bin;C:\Program Files\Java\jre6\bin

Eclipse直接解压就可以使用,自己嫌麻烦,就没有安装语言包,学英语。

BlackBerry JDE 4.5.0直接安装就可以了,安装完成后在安装目录的docs/api目录下有文档,呵呵,很重要的东东。我的手机就是8800,安装完成后默认的模拟器是8300,我的手机是8800,所以还是比较习惯8800的界面,在安装目录下的simulator目录里面有个文件defaultSimulator.bat,是个启动fledge.exe(模拟器配置程序)的批处理文件,我将里面的8300全部改成8800。后来发现fledge.exe中可以直接选择手机型号,晕死~

二、Eclipse设置

1Window->Preferences

1)点击Java->Installed JREs,可以看到里面只有一个jre6项目。

 

点击Add,在对话框中选择Standard VM,然后Next,到下一步。

 

JRE home项点Directory,选择JDK的安装目录下的jdk1.6.0_03目录。JRE name中填写一个标识你创建的JRE名称(我的是RIM JRE)。将JRE system libraries中的jar包全部删除,因为我们目标只是在黑莓的API中开发应用程序,写代码时这些包会干扰视线,通通和谐掉。然后点击Add External JARs…,在BlackBerry JDE 4.5.0安装目录下的lib文件夹中选择net_rim_api.jar,添加进JRE system libraries

 

添加后点前面的小三角,开始设置Javadoc目录,如下图:

 

Javadoc location,然后点击右面Javadoc Location…,在弹出来的对话框中点Browse…,选择BlackBerry JDE安装目录下的doc/api/目录,OK,然后Finish回到Installed JREs。可以看到RIM JREs在列表中,将其打钩,并且点击jre6,再点Remove将其移除。

JRE导入完成!

 

2)点击Java->Compiler,将Compiler compliance level设置为1.4(具体原因不明,谁知道,喊一声)。其他的不要变,OK

 

3)点Java->Debug->Detail Formatters,点击Add,在Qualfield type name:中输入java.lang.String,下面Detal formatter code snippet:输入toString(),下面Show variable details 选择In detail pane onlyOK完成。

 

4)点Java->Debug,将Debugger timeout设置为15000Launch timeout设置为200000OK完成。

 

5)点General->Workspace,去掉Build automatically,将后面两项打钩,OK完成。

 

注:1、上面的设置中的JDKBlackBerry JDE安装路径要根据自己的实际路径设置。

    2、因为是引用PDF中的图片,所以图片中的设置和我的设置不一样,不过这并不影响什么,大家照葫芦画瓢了。

2、创建工程

1)点击File->New->Java Project,填入工程名(我的是HelloWorld),Contents选择创建一个新的工程,JRE选择使用一个特殊的JRE(我的是RIM JVM),其他的都是默认的就行。Next

 

2)在这一步,工程中的文件夹可以没有。不过这样整个工程会感觉很混乱,还是建议把不同的文件分类存放,例如src存放*.javaimg存放图片,或者再建一个res文件夹存放其他资源文件,等等。

 

3)在Order and Export中选中JRE System Library [RIM JVM]Finish

 

3、在工程中导入bb-ant-tools

1)右击工程名,选择New->Folder,文件夹名为lib,点击Finish。右击Finish,选择Import,点General->File System,然后Next

 

2)点Browse…,选择bb-ant-tools所在的目录,勾选右面的列表中的bb-ant-tools.jar,在Into folder中选择HelloWorld/lib,点Finish

 

4)工程中目录应该是下面这个样子的:

 

右击bb-ant-tools.jar,选择Build Path->Add to Build Path,之后在Referenced Libraries中会出现。

 

4、在工程中创建工程配置文件build.xml

右击工程名->New->File,文件名为Build.xml,向其中加入如下代码,其中红色部分是根据自己的JDK以及BlackBerry JDE的安装目录灵活改变的。

<?xml version="1.0" encoding="UTF-8"?>

<project name="HelloWorld" default="buildRIM" basedir=".">

       <taskdef resource="bb-ant-defs.xml" classpath="lib/bb-ant-tools.jar" />

       <property name="jdehome" value="D:\Program Files\Research In Motion\BlackBerry JDE 4.5.0" />

       <property name="javahome" value="C:\Program Files\Java\jdk1.6.0_13" />

       <property name="simulator" value="${jdehome}\simulator" />

       <property name="bin" value="${jdehome}\bin" />

       <property name="output" value=" HelloWorld " />

       <property name="title" value=" HelloWorld " />

       <property name="vendor" value="W.S" />

       <property name="version" value="0.1" />

       <property name="description" value="wilesilly`s Blackberry program" />

       <target name="buildRIM" description="Composes RIM" depends="clean">

              <rapc jdehome="${jdehome}" jdkhome="${javahome}" output="${output}">

                     <jdp title="${title}" vendor="${vendor}" version="${version}" description="${description}" runonstartup="false" type="cldc" />

                     <src>

                            <fileset dir="D:\workspace\HelloWorld">

                                   <include name="**/*.java" />

                                   <include name="resource/**/*.*" />

                            </fileset>

                     </src>

              </rapc>

              <copy todir="${simulator}" overwrite="true">

                     <fileset dir=".">

                            <include name="*.cod" />

                            <include name="*.debug" />

                            <include name="*.cso" />

                     </fileset>

              </copy>

       </target>

       <target name="clean">

              <delete>

                     <fileset dir="bin" includes="**/*.class" />

                     <fileset dir=".">

                            <include name="*.cod" />

                            <include name="*.cso" />

                            <include name="*debug" />

                            <include name="*.jad" />

                            <include name="*.jar" />

                            <include name="*.rapc" />

                     </fileset>

              </delete>

       </target>

</project>

具体都是什么含义,我也不是很清楚,但是jdehome就是BlackBerry JDE的安装目录,javahomeJDK的安装目录。还好有现成的,否则不会XML还不挂掉了?以后学吧,肯定有用。

5)设置Builders

右击工程名->Properties

 

New一个,选择Ant BuilderOK

 

Name自己写一个,在Main标签中的BuildfileBrowse Workspace…,选择HelloWorld目录中的build.xml文件,OK

 

Targets标签中的During a Clean”右面点击Set Targets,仅仅选择cleanOK,仍然OK

 

RIM_Builder上移,OK

 

工程配置终于完成了,可以添加代码进工程了。首先写个最简单的HelloWorld.java。代码如下:

import net.rim.device.api.ui.UiApplication;

import net.rim.device.api.ui.container.MainScreen;

import net.rim.device.api.ui.Field;

import net.rim.device.api.ui.component.Dialog;

import net.rim.device.api.ui.component.LabelField;

import net.rim.device.api.ui.component.RichTextField;

 

public class HelloWorld extends UiApplication

{

    public static void main(String[] args)

    {

        HelloWorld theApp = new HelloWorld();

        theApp.enterEventDispatcher();

    }

 

    public HelloWorld()

    {

        pushScreen(new HelloWorldScreen());

    }    

}

 final class HelloWorldScreen extends MainScreen

{

    public HelloWorldScreen()

    {

        LabelField title = new LabelField("Hello World Demo" , LabelField.ELLIPSIS | LabelField.USE_ALL_WIDTH);

        setTitle(title);

        add(new RichTextField("Hello World!" ,Field.NON_FOCUSABLE));

    }

 

    public void close()

    {

        Dialog.alert("Goodbye!");

        System.exit(0);

        super.close();

    }   

 

}

保存后,可以右击工程名->Build Project或者Ctrl+BBuild一下,应该没有错误的。

这样,Eclipse以及工程的配置已经基本完成,配置文件可以拷贝一份,可能一用好多年,它一直带在身边,程序员版的双截棍。^_^

 

三、Eclipse调试

使用Eclipse调试黑莓程序,必须将JDWP程序打开,这样当在Eclipse中点击调试时,这个程序会自动启动模拟器。第一次调试的时候可能会提示*.debug文件找不到,别理它,直接点“Don`t ask this again”。

右击工程名->Debug as->Debug configuration,或者点击工具栏上那个甲壳虫图标右面的小三角选择Debug configuration

 

Remote Java Application上点右键,选择New

 

Eclipse会自动配置好Debug,你只需按Debug就可以调试了。

 

运行结果:

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics