J2mePolish 打包帮助
准备工作
下载
- *
Java 2 Standard Edition SDK 1.4 or higher,
http://java.sun.com/j2se/
- *
Sun Java Wireles
s Toolkit,
http://java.sun.com/products/sjwtoolkit/index.html
(for Windows and Linux), or the Mobile Power Player SDK
http://developer.mpowerplayer.com
(for Mac OS X)
- Favorite IDE, for example Eclipse 3.0,
http://www.eclipse.org
- *
Ant 1.6 or higher, if not already integrated in the IDE,
http://ant.apache.org
- Optionally device emulators, e.g. the Nokia J2ME emulator,
http://forum.nokia.com
- *
J2mePolish
http://www.j2mePolish.org
- Blackberry
JDE
(
如果需要为
blackberry
打包的话,需安装此项
)
注:
带
*
的为必装项
安装
- JDK
,
WTK
的安装可直接下载
windows
的安装包,按提示安装
- Ant
安装中,先解压
zip
文件,然后在系统环境变量中设置
ANT_HOME
到安装目录
然后在环境变量
Path
中加入
%ANT_HOME%/bin
.
设置好后,打开
command Line
,测试输入
ant
,如果提示
ant
为未知命令,则配置出错,否则安装成功
- J2mePolish
可双击
jar
包,按照提示进行安装
准备
在
build.xml
中添加
<property file=”
build. properties
“/>
新建
build. properties
文件,并
在
build. properties
中设置
WTK
,POLISH,BLACKBERRY
JDE
(如果已安装)
的位置
,例如:
wtk.home=C:/WTK
2.5.2
polish.home=C:/Program Files/J2ME-Polish
blackberry.home=c:/BlackBerry JDE
4.1.0
选择打包机型
<property name=”dev
ice” value=”BlackBerry/4.1″/>
更改此处的
value
来指定需要打包的机型,此时只为
BlackBerry/4.1
打包
,也可以设置多个
device
,各个
device
之间用逗号隔开,如下
<property name=”device”
value=”Generic/wmapi20,Generic/pda,
Motorola/L6, Motorola/L7, Motorola/V3-CLDC1.0, Motorola/V3xx
,
Motorola/K1, Motorola/Z3, Motorola/Z6,Motorola/V8 ,
Motorola/E680, Motorola/E680i, Motorola/E2, Motorola/E6,
Motorola/A1000,Motorola/C975,Motorola/E770,
Motorola/E1000,
M
otorola/V980,Nokia/Series40Midp2,Nokia/Series40E3,
Samsung/SGH-X830,LG/CU400,
Nokia/Series60E2FP3,
Nokia/7373,Nokia/6670,
Sony-Ericsson/JavaPlatform6, Sony-Ericsson/JavaPlatform5″/>
打包
在
command line
下进入
build.xml
所在目录,然后运行
ant
命令,会看到执行
build.xml
,并打印打包的相关信息
ant clear :
清除打包历史
(
即
删除
build
文件夹,
dist
文件夹
)
J2me
Polish
变量
Polish
内置
变量
Polish
可在打包过程中,对工程进行预编译
,例如
:
//#if polish.key.LeftSoftKey:defined && polish.key.LeftSoftKey != -6 && !polish.blackberry
//#= ${polish.key.LeftSoftKey};
//#elif polish.blackberry
//#= 113;
//#else
-6;
//#endif
在以上代码中
是
polish
预编译中的
if
语句
的语法实例
,其中
polish.key.LeftSoftKey
,
polish.blackberry
均为
j2mepolish
的内部变量,变量值分别为当前打包机型的左软键值和当前机型是否为
blackberry
机型
,
j2mepolish
中还有很多内部的变量,我们可以利用这些丰富的内部变量来对我们的代码进行预编译
.
至于
J2mePolish
有那些内部变量,暂时还没找到相关的变量列表,但是如果和机型相关,我们可以去
$(polish.home)/
devices.xml
中去寻找一下,文件中的
capability
以及
device
的属性均可作为
polish
的内部变量,可以去查看一下
LeftSoftKey
在该文件中是如何定义的
用户自定义变量
虽然
Polish
已经存在很多
内部变量,但是有时候配合工程的应用,需要自定义一些变量,比如在
某个版本中我们不想加入一个特定的功能模块,
比如叫
e
special
_m
odel
,我们可以在
build.xml
中自定义一个变量叫
useEspecialModel
,并设置为
false
,如下
<j2mepolish>
<build>
<variables>
<
variable
name=”
useEspecialModel
” value=”false”/>
</variables>
</build
>
<
/
j2mepolish>
并在与次
Model
所有相关的代码用如下形式包围起来
//#if
useEspecialModel
…
Model code
…
//#endif
这样
Model code
部分的代码在经过
polish
预编译后将不参与打包
,如果后来又想加入此模块,只要把
useEspecialModel
改为
true
即可
,注意如果是整个文件都不需要的话,可将整个文件的内容用上述形式包围。