ICU-6289 Updated readme.html for 4.0d03.

X-SVN-Rev: 24256
This commit is contained in:
Yoshito Umaoka 2008-06-20 21:21:07 +00:00
parent 88947f8759
commit 6765090fc2

View file

@ -12,10 +12,10 @@ h3.doc { background: #CCCCFF }
<body style="background-color: rgb(255, 255, 255);" lang="EN-US"
link="#0000ff" vlink="#800080">
<h2>International Components for Unicode for Java (ICU4J)</h2>
<h3>Read Me for ICU4J 4.0 d02</h3>
<h3>Read Me for ICU4J 4.0 d03</h3>
<hr size="2" width="100%">
<p><b>Release Date</b><br>
May 28, 2008<br>
June 23, 2008<br>
</p>
<!-- <p><b>Note:</b> This is major release of ICU4J. It contains bug fixes
and adds implementations of inherited API and introduces new API
@ -131,14 +131,24 @@ current and complete version is always found in ICU4J.</p>
<h3 class="doc"><a name="news"></a>What Is New In This Release?</h3>
<p><b>Status of ICU4J charset converter</b>
<p><b>Status of ICU4J charset converter</b></p>
<p>The ICU4J implementation of java.nio.charset.Charset was included in ICU4J 3.8 as
a Technology Preview. In this release, all functionality from the java.nio.Charset
interfaces is operational and promoted to the draft status.
</p>
<p><b>ICU4J Locale Service Provider</b></p>
<p>The ICU4J implementation of Java SE 6 locale sensitive service provider
insterfaces (java.util.spi.LocaleServiceProvider subclasses) is newly added
in this release as a Technology Preview. Please refer to the
<a href="localespi/readme.html">Read Me for ICU4J Locale Service Provider</a>
for more details.
</p>
<p><b>New features</b></p>
<p>
See the <a href="http://www.icu-project.org/download/">ICU 4.0 download page</a> about new features in this release.
See the <a href="http://www.icu-project.org/download/">ICU 4.0 download page</a> about other
new features in this release.
</p>
<h3 class="doc"><a name="license"></a>License Information</h3>
<p>
@ -166,7 +176,7 @@ X-specific trademarks and copyright notices. The full copy of <a
package.
</p>
<h3 class="doc"><a name="PlatformDependencies"></a>Platform Dependencies</h3>
<p> By default ICU4J depends on functionality that is only available
<p> By default ICU4J depends on functionality available
in J2SE 1.4 or later releases. Some new ICU4J features support types
introduced in J2SE 5, you can still use the same ICU4J binaries on JRE
1.4. We provide the ability to build a variant of ICU4J that will run
@ -365,10 +375,13 @@ information</td>
file.<br>
<font color="red">Charset</font> packages become part of the ICU4J charset jar
file.<br>
<font color="red">API</font> packages contain classes with supported
API. <br>
<font color="red">LocaleSPI</font> packages become part of the ICU4J Locale
service provider jar file.<br>
<font color="red">RichText</font> classes are Core and API, but can be
removed from icu4j.jar, and can be built into their own jar.</p>
removed from icu4j.jar, and can be built into their own jar.<br>
<font color="red">API</font> packages contain classes with supported
API.<br>
</p>
<table bgcolor="#ccccff" border="0" cellpadding="3" frame="void"
width="623">
<tbody>
@ -449,7 +462,7 @@ classes:
</tr>
<tr>
<th align="right" bgcolor="#ffffff" valign="baseline">$icu4j_root/src/com/ibm/richtext<br>
<font color="red">RichText</font></th>
<font color="red">RichText,Non-API</font></th>
<td bgcolor="#ffffff" valign="baseline">Styled text editing
package. This includes demos, tests, and GUIs for editing and
displaying styled text. The richtext package provides a scrollable
@ -459,6 +472,22 @@ respectively), text styles, clipboard operations (cut, copy and paste)
and a log of changes for undo-redo. Richtext uses Java's TextLayout and
complex text support (provided to Sun by the ICU4J team).</td>
</tr>
<tr>
<th align="right" bgcolor="#ffffff" valign="baseline">$icu4j_root/localespi/src/com/ibm/icu/impl<br>
<font color="red">LocaleSPI,Non-API</font></th>
<td bgcolor="#ffffff" valign="baseline">
Packages for ICU4J Locale Service Provider runtime
code implementing the Java SE 6 locale sensitive service provider interfaces.
</td>
</tr>
<tr>
<th align="right" bgcolor="#ffffff" valign="baseline">$icu4j_root/localespi/src/com/ibm/icu/dev<br>
<font color="red">LocaleSPI,Non-API</font></th>
<td bgcolor="#ffffff" valign="baseline">
Packages used for internal development for ICU4J Locale Service Provider, including
test cases.
</td>
</tr>
</tbody>
</table>
<p><b>Building ICU4J creates and populates the following directories:</b></p>
@ -719,809 +748,18 @@ file.</p>
typing<br>
<tt>"ant check"</tt> or
"java -classpath classes com.ibm.icu.dev.test.TestAll -nothrow".</p>
<p><b>Note: </b>To install/build ICU4J Locale Service Provider, please refer
<a href="localespi/readme.html">Read Me for ICU4J Locale Service Provider</a>.</p>
<h3 class="doc"><a name="HowToModularize"></a>How to modularize ICU4J</h3>
<p>Some clients may not wish to ship all of ICU4J with their
application, since the application might only use a small part of
ICU4J.
application, since the application might only use a small part of ICU4J.
ICU4J release 2.6 and later provide build options to build individual
ICU4J 'modules' for a more compact distribution.
The modules are based on a service and the APIs that define it, e.g.,
the normalizer module supports all the APIs of the Normalizer class
(and some others). Tests can be run to verify that the APIs supported
by the module function correctly.
Because of internal code dependencies, a module contains extra classes
that are not part of the module's core service API. Some or most of the
APIs of these extra classes will not work. <b>Only the module's core
service API is guaranteed.</b> Other APIs may work partially or not at
all, so client code should avoid them.</p>
<p>
Individual modules are not built directly into their own separate jar
files. Since their dependencies
often overlap, using separate modules to 'add on' ICU4J functionality
would result in
unwanted duplication of class files. Instead, building a module causes
a subset of ICU4J's
classes to be built and put into ICU4J's standard build directory.
After one or more module targets are built, the 'moduleJar' target can
then be
built, which packages the class files into a 'module jar.' Other than
the fact that it
contains fewer class files, little distinguishes this jar file from a
full ICU4J jar file,
and in fact they share the same name.</p>
<p>
Currently ICU4J can be divided into the following modules:
</p>
<p><b>Key:</b></p>
<table bgcolor="#ccccff" cellpadding="3" frame="void" width="750">
<tbody>
<tr>
ICU4J 'modules' for a more compact distribution. For more details, please
refer to the section <em>Modularization of ICU4J</em> in the ICU user's
guide article <a href="http://www.icu-project.org/userguide/packaging.html">Packaging ICU</a>.
<th align="left" valign="baseline"><b>Module Name</b></th>
<th align="left" valign="baseline"><b>Ant Targets</b></th>
<th align="left" valign="baseline"><b>Test Package Supported</b></th>
<th align="right" valign="baseline"><b>Size&#x2021;</b></th>
</tr>
<tr bgcolor="#ffffff">
<td colspan="4">
<table>
<tbody>
<tr>
<td valign="baseline">Package*</td>
<td valign="baseline">Main Classes&#x2020;</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
<b><font size="2">* com.ibm. should be prepended to the package names
listed.
<br>
&#x2020; Class name in bold indicates core service API. Only APIs in these classes are
fully supported.
<br>
&#x2021; Sizes are of the compressed jar file containing only this module.
These sizes are approximate for release 3.6.
</font></b>
<p><b>Modules:</b></p>
<table bgcolor="#ccccff" cellpadding="3" frame="void" width="750">
<tbody>
<tr>
<th align="left" valign="baseline">Normalizer</th>
<td align="left" valign="baseline">normalizer, normalizerTests</td>
<td align="left" valign="baseline">com.ibm.icu.dev.test.normalizer</td>
<td align="right" valign="baseline">465&nbsp;KB</td>
</tr>
<tr bgcolor="#ffffff">
<td colspan="4" valign="top">
<table border="0" cellpadding="5">
<tbody>
<tr>
<td valign="baseline">icu.lang:</td>
<td valign="baseline">
UCharacter,
UCharacterCategory,
UCharacterDirection,
UCharacterEnums,
UProperty,
UScript
</td>
</tr>
<tr>
<td valign="baseline">icu.text:</td>
<td valign="baseline">
BreakIterator,
CanonicalIterator,
<b>Normalizer</b>,
Replaceable,
ReplaceableString,
SymbolTable,
UCharacterIterator,
UForwardCharacterIterator,
UnicodeFilter,
UnicodeMatcher,
UnicodeSet,
UnicodeSetIterator,
UTF16
</td>
</tr>
<tr>
<td valign="baseline">icu.util:</td>
<td valign="baseline">
Freezable,
RangeValueIterator,
StringTokenizer,
ULocale,
UResourceBundle,
UResourceBundleIterator,
UResourceTypeMismatchException,
ValueIterator,
VersionInfo
</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<th align="left" valign="baseline">Collator</th>
<td align="left" valign="baseline">collator, collatorTests</td>
<td align="left" valign="baseline">com.ibm.icu.dev.test.collator</td>
<td align="right" valign="baseline">1,911&nbsp;KB</td>
</tr>
<tr bgcolor="#ffffff">
<td colspan="4" valign="top">
<table border="0" cellpadding="5">
<tbody>
<tr>
<td valign="baseline">icu.lang:</td>
<td valign="baseline">
UCharacter,
UCharacterCategory,
UCharacterDirection,
UCharacterEnums,
UProperty,
UScript
</td>
</tr>
<tr>
<td valign="baseline">icu.text:</td>
<td valign="baseline">
BreakDictionary,
BreakIterator,
CanonicalIterator,
<b>CollationElementIterator</b>,
<b>CollationKey</b>,
<b>Collator</b>,
DictionaryBasedBreakIterator,
Normalizer,
RawCollationKey,
Replaceable,
ReplaceableString,
RuleBasedBreakIterator,
<b>RuleBasedCollator</b>,
SymbolTable,
UCharacterIterator,
UForwardCharacterIterator,
UnicodeFilter,
UnicodeMatcher,
UnicodeSet,
UnicodeSetIterator,
UTF16
</td>
</tr>
<tr>
<td valign="baseline">icu.util:</td>
<td valign="baseline">
ByteArrayWrapper,
CompactByteArray,
Freezable,
RangeValueIterator,
StringTokenizer,
ULocale,
UResourceBundle,
UResourceBundleIterator,
UResourceTypeMismatchException,
ValueIterator,
VersionInfo
</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<th align="left" valign="baseline">Calendar</th>
<td align="left" valign="baseline">calendar, calendarTests</td>
<td align="left" valign="baseline">com.ibm.icu.dev.test.calendar</td>
<td align="right" valign="baseline">2,176&nbsp;KB</td>
</tr>
<tr bgcolor="#ffffff">
<td colspan="4" valign="top">
<table border="0" cellpadding="5">
<tbody>
<tr>
<td valign="baseline">icu.lang:</td>
<td valign="baseline">
UCharacter,
UCharacterCategory,
UCharacterDirection,
UCharacterEnums,
UProperty,
UScript
</td>
</tr>
<tr>
<td valign="baseline">icu.math:</td>
<td valign="baseline">
BigDecimal,
MathContext
</td>
</tr>
<tr>
<td valign="baseline">icu.text:</td>
<td valign="baseline">
BreakIterator,
CanonicalIterator,
<b>ChineseDateFormat</b>,
<b>ChineseDateFormatSymbols</b>,
CollationElementIterator,
CollationKey,
Collator,
<b>DateFormat</b>,
<b>DateFormatSymbols</b>,
DecimalFormat,
DecimalFormatSymbols,
MessageFormat,
Normalizer,
NumberFormat,
PluralFormat,
PluralRules,
RawCollationKey,
Replaceable,
ReplaceableString,
RuleBasedCollator,
RuleBasedNumberFormat,
RuleBasedTransliterator,
<b>SimpleDateFormat</b>,
SymbolTable,
UCharacterIterator,
UFormat,
UForwardCharacterIterator,
UnicodeFilter,
UnicodeMatcher,
UnicodeSet,
UnicodeSetIterator,
UTF16
</td>
</tr>
<tr>
<td valign="baseline">icu.util:</td>
<td valign="baseline">
AnnualTimeZoneRule,
<b>BasicTimeZone</b>,
<b>BuddhistCalendar</b>,
ByteArrayWrapper,
<b>Calendar</b>,
<b>ChineseCalendar</b>,
<b>CopticCalendar</b>,
Currency,
CurrencyAmount,
<b>DateRule</b>,
DateTimeRule,
<b>EasterHoliday</b>,
<b>EthiopicCalendar</b>,
Freezable,
<b>GregorianCalendar</b>,
<b>HebrewCalendar</b>,
<b>HebrewHoliday</b>,
<b>Holiday</b>,
<b>IndianCalendar</b>,
InitialTimeZoneRule,
<b>IslamicCalendar</b>,
<b>JapaneseCalendar</b>,
Measure,
MeasureUnit,
<b>RangeDateRule</b>,
RangeValueIterator,
<b>SimpleDateRule</b>,
<b>SimpleHoliday</b>,
<b>SimpleTimeZone</b>,
StringTokenizer,
<b>TaiwanCalendar</b>,
<b>TimeZone</b>,
TimeZoneRule,
TimeZoneTransition,
ULocale,
UResourceBundle,
UResourceBundleIterator,
UResourceTypeMismatchException,
ValueIterator,
VersionInfo
</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<th align="left" valign="baseline">BreakIterator</th>
<td align="left" valign="baseline">breakIterator,
breakIteratorTests</td>
<td align="left" valign="baseline">com.ibm.icu.dev.test.breakiterator</td>
<td align="right" valign="baseline">1,889&nbsp;KB</td>
</tr>
<tr bgcolor="#ffffff">
<td colspan="4" valign="top">
<table border="0" cellpadding="5">
<tbody>
<tr>
<td valign="baseline">icu.lang:</td>
<td valign="baseline">
UCharacter,
UCharacterCategory,
UCharacterDirection,
UCharacterEnums,
UProperty,
UScript
</td>
</tr>
<tr>
<td valign="baseline">icu.text:</td>
<td valign="baseline">
<b>BreakDictionary</b>,
<b>BreakIterator</b>,
CanonicalIterator,
<b>DictionaryBasedBreakIterator</b>,
Normalizer,
Replaceable,
ReplaceableString,
<b>RuleBasedBreakIterator</b>,
SymbolTable,
Transliterator,
UCharacterIterator,
UForwardCharacterIterator,
UnicodeFilter,
UnicodeMatcher,
UnicodeSet,
UnicodeSetIterator,
UTF16
</td>
</tr>
<tr>
<td valign="baseline">icu.util:</td>
<td valign="baseline">
CompactByteArray,
Freezable,
RangeValueIterator,
StringTokenizer,
ULocale,
UResourceBundle,
UResourceBundleIterator,
UResourceTypeMismatchException,
ValueIterator,
VersionInfo
</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<th align="left" valign="baseline">Basic Properties</th>
<td align="left" valign="baseline">propertiesBasic,
propertiesBasicTests</td>
<td align="left" valign="baseline">com.ibm.icu.dev.test.lang</td>
<td align="right" valign="baseline">554&nbsp;KB</td>
</tr>
<tr bgcolor="#ffffff">
<td colspan="4" valign="top">
<table border="0" cellpadding="5">
<tbody>
<tr>
<td valign="baseline">icu.lang:</td>
<td valign="baseline">
<b>UCharacter</b>,
<b>UCharacterCategory</b>,
<b>UCharacterDirection</b>,
<b>UCharacterEnums</b>,
<b>UProperty</b>,
<b>UScript</b>,
<b>UScriptRun</b>
</td>
</tr>
<tr>
<td valign="baseline">icu.text:</td>
<td valign="baseline">
BreakDictionary,
BreakIterator,
DictionaryBasedBreakIterator,
Normalizer,
Replaceable,
ReplaceableString,
RuleBasedBreakIterator,
SymbolTable,
UCharacterIterator,
UForwardCharacterIterator,
UnicodeFilter,
UnicodeMatcher,
UnicodeSet,
UnicodeSetIterator,
<b>UTF16</b>
</td>
</tr>
<tr>
<td valign="baseline">icu.util:</td>
<td valign="baseline">
CompactByteArray,
Freezable,
RangeValueIterator,
StringTokenizer,
ULocale,
UResourceBundle,
UResourceBundleIterator,
UResourceTypeMismatchException,
ValueIterator,
VersionInfo
</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<th align="left" valign="baseline">Full Properties</th>
<td align="left" valign="baseline">propertiesFull,
propertiesFullTests</td>
<td align="left" valign="baseline">com.ibm.icu.dev.test.lang</td>
<td align="right" valign="baseline">1,829&nbsp;KB</td>
</tr>
<tr bgcolor="#ffffff">
<td colspan="4" valign="top">
<table border="0" cellpadding="5">
<tbody>
<tr>
<td valign="baseline">icu.lang:</td>
<td valign="baseline">
<b>UCharacter</b>,
<b>UCharacterCategory</b>,
<b>UCharacterDirection</b>,
<b>UCharacterEnums</b>,
<b>UProperty</b>,
<b>UScript</b>,
<b>UScriptRun</b>
</td>
</tr>
<tr>
<td valign="baseline">icu.text:</td>
<td valign="baseline">
BreakDictionary,
BreakIterator,
DictionaryBasedBreakIterator,
<b>Normalizer</b>,
<b>Replaceable</b>,
<b>ReplaceableString</b>,
RuleBasedBreakIterator,
SymbolTable,
<b>UCharacterIterator</b>,
<b>UForwardCharacterIterator</b>,
<b>UnicodeFilter</b>,
<b>UnicodeMatcher</b>,
<b>UnicodeSet</b>,
<b>UnicodeSetIterator</b>,
<b>UTF16</b>
</td>
</tr>
<tr>
<td valign="baseline">icu.util:</td>
<td valign="baseline">
CompactByteArray,
Freezable,
<b>RangeValueIterator</b>,
StringTokenizer,
ULocale,
UResourceBundle,
UResourceBundleIterator,
UResourceTypeMismatchException,
<b>ValueIterator</b>,
<b>VersionInfo</b>
</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<th align="left" valign="baseline">Formatting</th>
<td align="left" valign="baseline">format, formatTests</td>
<td align="left" valign="baseline">com.ibm.icu.dev.test.format</td>
<td align="right" valign="baseline">3,443&nbsp;KB</td>
</tr>
<tr bgcolor="#ffffff">
<td colspan="4" valign="top">
<table border="0" cellpadding="5">
<tbody>
<tr>
<td valign="baseline">icu.lang:</td>
<td valign="baseline">
UCharacter,
UCharacterCategory,
UCharacterDirection,
UCharacterEnums,
UProperty,
UScript
</td>
</tr>
<tr>
<td valign="baseline">icu.math:</td>
<td valign="baseline">
<b>BigDecimal</b>,
MathContext
</td>
</tr>
<tr>
<td valign="baseline">icu.text:</td>
<td valign="baseline">
BreakIterator,
CanonicalIterator,
<b>ChineseDateFormat</b>,
<b>ChineseDateFormatSymbols</b>,
CollationElementIterator,
CollationKey,
Collator,
<b>DateFormat</b>,
<b>DateFormatSymbols</b>,
<b>DecimalFormat</b>,
<b>DecimalFormatSymbols</b>,
<b>DurationFormat</b>,
MeasureFormat,
<b>MessageFormat</b>,
Normalizer,
<b>NumberFormat</b>,
<b>PluralFormat</b>,
<b>PluralRules</b>,
RawCollationKey,
Replaceable,
ReplaceableString,
RuleBasedCollator,
<b>RuleBasedNumberFormat</b>,
<b>SimpleDateFormat</b>,
SymbolTable,
<b>UCharacterIterator</b>,
UFormat,
UForwardCharacterIterator,
UnicodeFilter,
UnicodeMatcher,
UnicodeSet,
UnicodeSetIterator,
UTF16
</td>
</tr>
<tr>
<td valign="baseline">icu.util:</td>
<td valign="baseline">
AnnualTimeZoneRule,
BasicTimeZone,
<b>BuddhistCalendar</b>,
ByteArrayWrapper,
<b>Calendar</b>,
<b>ChineseCalendar</b>,
<b>CopticCalendar</b>,
<b>Currency</b>,
CurrencyAmount,
DateTimeRule,
<b>EthiopicCalendar</b>,
Freezable,
<b>GregorianCalendar</b>,
<b>HebrewCalendar</b>,
<b>IndianCalendar</b>,
InitialTimeZoneRule,
<b>IslamicCalendar</b>,
<b>JapaneseCalendar</b>,
Measure,
MeasureUnit,
RangeValueIterator,
<b>SimpleTimeZone</b>,
StringTokenizer,
<b>TaiwanCalendar</b>,
TimeArrayTimeZoneRule,
<b>TimeZone</b>,
TimeZoneRule,
TimeZoneTransition,
ULocale,
UResourceBundle,
UResourceBundleIterator,
UResourceTypeMismatchException,
ValueIterator,
VersionInfo
</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<th align="left" valign="baseline">StringPrep, IDNA</th>
<td align="left" valign="baseline">stringPrep, stringPrepTests</td>
<td align="left" valign="baseline">com.ibm.icu.dev.test.stringprep</td>
<td align="right" valign="baseline">488&nbsp;KB</td>
</tr>
<tr bgcolor="#ffffff">
<td colspan="4" valign="top">
<table border="0" cellpadding="5">
<tbody>
<tr>
<td valign="baseline">icu.lang:</td>
<td valign="baseline">
UCharacter,
UCharacterCategory,
UCharacterDirection,
UCharacterEnums,
UProperty,
UScript
</td>
</tr>
<tr>
<td valign="baseline">icu.text:</td>
<td valign="baseline">
<b>StringPrep</b>,
<b>StringParseException</b>,
SymbolTable,
UCharacterIterator,
UForwardCharacterIterator,
UnicodeFilter,
UnicodeMatcher,
UnicodeSet,
UnicodeSetIterator,
UTF16
</td>
</tr>
<tr>
<td valign="baseline">icu.util:</td>
<td valign="baseline">
Freezable,
RangeValueIterator,
StringTokenizer,
ULocale,
UResourceBundle,
UResourceBundleIterator,
UResourceTypeMismatchException,
ValueIterator,
VersionInfo
</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<th align="left" valign="baseline">Transforms</th>
<td align="left" valign="baseline">transliterator, transliteratorTests</td>
<td align="left" valign="baseline">com.ibm.icu.dev.test.translit</td>
<td align="right" valign="baseline">890&nbsp;KB</td>
</tr>
<tr bgcolor="#ffffff">
<td colspan="4" valign="top">
<table border="0" cellpadding="5">
<tbody>
<tr>
<td valign="baseline">icu.lang:</td>
<td valign="baseline">
UCharacter,
UCharacterCategory,
UCharacterDirection,
UCharacterEnums,
UProperty,
UScript
</td>
</tr>
<tr>
<td valign="baseline">icu.text:</td>
<td valign="baseline">
BreakDictionary,
BreakIterator,
DictionaryBasedBreakIterator,
Normalizer,
<b>Replaceable</b>,
<b>ReplaceableString</b>,
RuleBasedBreakIterator,
RuleBasedCollator,
<b>RuleBasedTransliterator</b>,
StringTransform,
SymbolTable,
<b>Transliterator</b>,
UCharacterIterator,
UForwardCharacterIterator,
UnicodeFilter,
UnicodeMatcher,
<b>UnicodeSet</b>,
<b>UnicodeSetIterator</b>,
<b>UTF16</b>
</td>
</tr>
<tr>
<td valign="baseline">icu.util:</td>
<td valign="baseline">
CaseInsensitiveString,
CompactByteArray,
Freezable,
<b>RangeValueIterator</b>,
StringTokenizer,
ULocale,
UResourceBundle,
UResourceBundleIterator,
UResourceTypeMismatchException,
<b>ValueIterator</b>,
VersionInfo
</td>
</tr>
</tbody>
</table>
</td>
</tr>
<!-- tr>
<th align="left" valign="baseline"><b>Module Name</b></th>
<th align="left" valign="baseline"><b>Ant Targets</b></th>
<th align="left" valign="baseline"><b>Test Package Supported</b></th>
<th align="right" valign="baseline"><b>Size</b></th>
</tr -->
</tbody>
</table>
<p>Building any of these modules is as easy as specifying a build
target to the Ant build system, e.g:
<br>
To build a module that contains only the Normalizer API: </p>
<ol>
<li> Build the module. <br>
<code> ant normalizer </code> </li>
<li> Build the jar containing the module. <br>
<code>ant moduleJar </code> </li>
<li> Build the tests for the module. <br>
<code> ant normalizerTests </code> </li>
<li> Run the tests and verify that the self tests pass. <br>
<code> java -classpath classes com.ibm.icu.dev.test.TestAll -nothrow -w </code> </li>
</ol>
If more than one module is required, the module build targets can be
concatenated, e.g:
<ol>
<li> Build the modules. <br>
<code> ant normalizer collator </code> </li>
<li> Build the jar containing the modules. <br>
<code>ant moduleJar </code> </li>
<li> Build the tests for the module. <br>
<code> ant normalizerTests collatorTests </code> </li>
<li> Run the tests and verify that they pass. <br>
<code> java -classpath classes com.ibm.icu.dev.test.TestAll -nothrow -w </code> </li>
</ol>
The jar should be built before the tests, since for some targets
building the tests will cause additional classes to be compiled that
are not strictly necessary for the module itself.
<h5> Notes: </h5>
<ul>
<li>Regardless of whether ICU4J is built as a whole or as modules,
the jar file produced is named <em>icu4j.jar</em>.</li>
<li>To ascertain if an icu4j.jar contains all of ICU4J or not, please
see the manifest file in the jar</li>
<li>The target moduleJar does not depend on any other target. It just
creates a jar of all class files under
$icu4j_root/classes/com/ibm/icu/, excluding the classes files in
$icu4j_root/classes/com/ibm/icu/dev folder</li>
<li>The list of module build targets can be obtained by running the
command: <code>ant -projecthelp</code></li>
</ul>
<h3 class="doc"><a name="tryingout"></a>Trying Out ICU4J</h3>
<p><strong>Note:</strong> the demos provided with ICU4J are for the
most part undocumented. This list can show you where to look, but
@ -1576,6 +814,7 @@ one of the following:
<li><tt>java -classpath classes com.ibm.icu.dev.demo.rbnf.RbnfDemo</tt></li>
<li><tt>java -classpath classes com.ibm.icu.dev.demo.translit.Demo</tt></li>
</ul>
<h3 class="doc"><a name="resources">ICU4J Resource Information</a></h3>
Starting with release 2.1, ICU4J includes its own
resource information