Antenna基于Ant,是一个开源的J2me开发工具,有点类似于批处理,但是要比批处理功能强大的的多.
Antenna常用功能
WtkJad 生成Jad文件
WtkBuild 编译j2me项目
WtkPackage 打包
WtkMakePrc 将Jad/Jar转换成可以PalmOS上可以运行的PRC文件格式
WtkRun 启动模拟器
WtkPreverify 预校验
WtkObfuscate 混淆,需要指定混淆器(proguard/retroguard)
WtkPreprocess 预处理
下面是一个简单的编译文件,编译wtk自带例子audiodemo
<?xml version="1.0"? >
<project name="audiodemo" default="build" basedir="." >
<!-- 指定WTK目录 -- >
<property name="wtk.home" value="c:\Java\wtk-2.1" / >
<!-- 指定MIDP -- >
<property name="wtk.midp.version" value="2.0" / >
<!-- 指定CLDC -- >
<property name="wtk.cldc.version" value="1.0" / >
<!-- 指定支持mmapi多媒体包-- >
<property name="wtk.mmapi.enabled" value="true" / >
<!-- 指定项目属性 -- >
<!-- 指定MIDlet名字 -- >
<property name="midlet.name" value="audiodemo" / >
<!-- 指定项目目录 -- >
<property name="midlet.home" value="${wtk.home}/apps/${midlet.name}" / >
<!-- 载入Antenna任务定义 -- >
<taskdef resource="antenna.properties" / >
<!-- 定义清理任务 -- >
<target name="clean" >
<!-- 删除 classes 目录-- >
<delete failonerror="false" dir="classes" / >
<!-- 删除目录下的所有文件 -- >
<delete failonerror="false" >
<fileset dir="." >
<!-- 除了"build.xml"(文件本身)-- >
<exclude name="build.xml" / >
</fileset >
</delete >
</target >
<!-- 定义build任务-- >
<target name="build" >
<!-- 拷贝Jad文件过来 -- >
<copy file="${midlet.home}/bin/${midlet.name}.jad" todir="." / >
<!-- 建立 classes 目录 -- >
<mkdir dir="classes" / >
<!-- 编译,但是不预校验-- >
<wtkbuild srcdir="${midlet.home}/src" destdir="classes" preverify="false" / >
<!-- 打包并预校验 -- >
<wtkpackage jarfile="${midlet.name}.jar" jadfile="${midlet.name}.jad" preverify="true" >
<fileset dir="classes" / >
<fileset dir="${midlet.home}/res" / >
</wtkpackage >
<!-- 启动模拟器 -- >
<wtkrun jadfile="${midlet.name}.jad" device="DefaultColorPhone" wait="true" / >
</target >
</project >
编译过程
1.在IDE中,以Eclipse为例,
a.新建项目
b.将上面内容保存为 build.xml 放在项目的根目录下
c.eclipse中选中build.xml,右键,Run As-- > Ant build
2.无IDE,需要Apache Ant支持
a.到apache网站下载ant,安装,在环境变量path中增加 ant目录\bin
比如安装在c:\ant下,则添加 c:\ant\bin到path中
b.新建一个目录
c.将上面内容保存为 build.xml 放在目录下
d.打开dos窗口,cd到该目录
e.键入 ant,即可看到整个执行过程
上面的例子只是个简单的应用,Antenna的最大好处是可以进行预处理,利用同一份代码,可以为不同的平台生成多个发布版本,关键是只需维护一套代码.
相关网址
1.Apache Ant
http://ant.apache.org
2.Antenna
http://sf.net/projects/antenna