Antenna Support
This document describes MTJ's support for exporting Antenna build
files.
About Antenna
Antenna (
https://antenna.sourceforge.net)
is an
Ant extension. Antenna
provides a set of Ant tasks suitable for developing wireless Java
applications targeted at the Mobile Information Device Profile (MIDP).
With Antenna, you can compile, preverify, package, obfuscate, and run
your MIDP applications (aka MIDlets), manipulate Java Application
Descriptor (JAD) files, as well as convert JAR files to PRC files
designed to run on the MIDP for PalmOS implementations from Sun and IBM.
Thus, Antenna does many of the things in the Ant world that MTJ does in
the IDE world.
MTJ has the ability to automatically generate and update a set of
Antenna-compatible build files. This allows MTJ users to easily publish
Antenna build files for non-Eclipse users, or to use Antenna in
conjunction with MTJ to perform operations, such as PRC conversion, that
MTJ does not provide. It also allows MTJ projects to be included in
automated builds of larger projects.
Configuration
Before you can use MTJ's Antenna generation feature, you must
first provide MTJ with the location of the Antenna JAR file and a Sun
WTK. This configuration item is part of the BasicPreferences page.
Generating Antenna Build Files
In order to actually generate the Antenna Build Files, all you
need to do is to right-click on the project in the Package Explorer
window, select the Mobile Tools for Java item from the
context menu and then select Export Antenna Build Files
from the submenu.
Performing this operation the first time will result in three
files being added to your project:
-
build.xml
This is the standard Ant build file. If your project does not already
have a build.xml file one will be added.
-
mtj-build.xml
This is the generated Antenna build file.
-
mtj-build.properties
This file contains properties that mtj-build.xml
imports.
-
*.symbols - Files with a name
"<Configuration_Name>.symbols", such as
"DefaultColorPhone.symbols", "A910.symbols". These files contain
symbols for each configurations for Antenna preprocess task.
Ant support is built into Eclipse, and Antenna build support is
included in MTJ, so you can execute the Antenna build directly by
right-clicking on build.xml and selecting Run
/ Ant Build or selecting External
Tools from the main Run menu.
Customizing the Antenna Build
Although the automatically-generated build.xml
and mtj-build.xml file contains most of the common
operations you would typically want to perform with Antenna, the
designers of MTJ obviously can't anticipate all possible situations. As
such, MTJ's automatic generation process includes the ability to
customize the generated build files.
NOTE: Do not edit the mtj-build.xml and mtj-build.properties
files.
These files are automatically re-generated if and when you repeat
the export process, and so any changes you make will be overwritten. In
addition, the format and organization of the mtj-build.xml
file is subject to change.
If you want to add properties to those automatically generated
into mtj-build.properties file, or if you need to
override the automatically-generated properties, you can do so by
creating a file named user-build.properties in your
workspace. The contents of this file, if it is present, will override
the properties MTJ would normally generate.
If you want to add tasks to your build, add them to the build.xml
file. If you look at the generated files, you will see that the build.xml
file references the mtj-build.xml file using ant
tasks.
Note that the default build.xml assumes that you
are packaging your MIDlet suite using obfuscation. If you are not using
obfuscation, you will want to modify the build.xml file
appropriately. To do this, locate the line in the build.xml
that reads:
<target name="deployedSuite" depends="deployable" />
and change it to read:
<target name="deployedSuite" depends="jar" />
If you want to change symbols in *.symbols for a
configuration, please do that via Configuration EditDialog, and then re-export Antenna build files.