12e5b6d6dSopenharmony_ci<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
22e5b6d6dSopenharmony_ci   "http://www.w3.org/TR/html4/loose.dtd">
32e5b6d6dSopenharmony_ci<html>
42e5b6d6dSopenharmony_ci<head>
52e5b6d6dSopenharmony_ci  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
62e5b6d6dSopenharmony_ci  <meta http-equiv="Content-Style-Type" content="text/css2">
72e5b6d6dSopenharmony_ci  <title>ReadMe for ICU4J</title>
82e5b6d6dSopenharmony_ci  <meta name="COPYRIGHT" content="© 2016 and later: Unicode, Inc. and others. License & terms of use: http://www.unicode.org/copyright.html#License">
92e5b6d6dSopenharmony_ci  <style type="text/css">
102e5b6d6dSopenharmony_cih2.doc { background: #CCCCFF }
112e5b6d6dSopenharmony_cih3.doc { text-decoration: underline }
122e5b6d6dSopenharmony_ci  </style>
132e5b6d6dSopenharmony_ci</head>
142e5b6d6dSopenharmony_ci<body style="background-color: rgb(255, 255, 255);" lang="EN-US"
152e5b6d6dSopenharmony_ci link="#0000ff" vlink="#800080">
162e5b6d6dSopenharmony_ci<h1>International Components for Unicode for Java (ICU4J)</h1>
172e5b6d6dSopenharmony_ci<h2>Read Me for ICU4J 67.1</h2>
182e5b6d6dSopenharmony_ci(Last Update: 2020-Apr-1)
192e5b6d6dSopenharmony_ci<hr size="2" width="100%">
202e5b6d6dSopenharmony_ci
212e5b6d6dSopenharmony_ci<p>
222e5b6d6dSopenharmony_ci<b>Note:</b> This is major release of ICU4J. It contains bug fixes and adds implementations
232e5b6d6dSopenharmony_ciof inherited API and introduces new API or functionality.
242e5b6d6dSopenharmony_ci<!-- <b>Note:</b> This is a preview release of ICU4J 67.
252e5b6d6dSopenharmony_ciThe contents of this document may not reflect the recent changes done
262e5b6d6dSopenharmony_cifor ICU 67 development. It is not recommended for production use. -->
272e5b6d6dSopenharmony_ci<!-- <b>Note:</b> This is a development milestone of ICU4J 67.
282e5b6d6dSopenharmony_ciThe contents of this document may not reflect the recent changes done
292e5b6d6dSopenharmony_cifor ICU 67 development. It is not recommended for production use. -->
302e5b6d6dSopenharmony_ci<!-- <b>Note:</b> This is a release candidate of ICU4J 67.
312e5b6d6dSopenharmony_ciThe contents of this document may not reflect the recent changes done
322e5b6d6dSopenharmony_cifor ICU 67 development. This release candidate is intended for those
332e5b6d6dSopenharmony_ciwishing to verify ICU 67 integration before final release. It is not
342e5b6d6dSopenharmony_cirecommended for production use. -->
352e5b6d6dSopenharmony_ci</p>
362e5b6d6dSopenharmony_ci<p>For the most recent release, see the <a
372e5b6d6dSopenharmony_ci href="http://www.icu-project.org/download/"> ICU4J
382e5b6d6dSopenharmony_cidownload site</a>. </p>
392e5b6d6dSopenharmony_ci<h2 class="doc">Contents</h2>
402e5b6d6dSopenharmony_ci<ul type="disc">
412e5b6d6dSopenharmony_ci  <li><a href="#introduction">Introduction to ICU4J</a></li>
422e5b6d6dSopenharmony_ci  <li><a href="#changes">Changes In This Release</a></li>
432e5b6d6dSopenharmony_ci  <li><a href="#license">License Information</a></li>
442e5b6d6dSopenharmony_ci  <li><a href="#PlatformDependencies">Platform Dependencies</a></li>
452e5b6d6dSopenharmony_ci  <li><a href="#download">How to Download ICU4J</a></li>
462e5b6d6dSopenharmony_ci  <li><a href="#WhatContain">The Structure and Contents of ICU4J</a></li>
472e5b6d6dSopenharmony_ci  <li><a href="#API">Where to Get Documentation</a></li>
482e5b6d6dSopenharmony_ci  <li><a href="#HowToInstallJavac">How to Install and Build</a></li>
492e5b6d6dSopenharmony_ci  <li><a href="#HowToModularize">How to modularize ICU4J</a></li>
502e5b6d6dSopenharmony_ci  <li><a href="#tryingout">Trying Out ICU4J</a></li>
512e5b6d6dSopenharmony_ci  <li><a href="#resources">ICU4J Resource Information</a></li>
522e5b6d6dSopenharmony_ci  <li><a href="#timezone">About ICU4J Time Zone</a></li>
532e5b6d6dSopenharmony_ci  <li><a href="#WhereToFindMore">Where to Find More Information</a></li>
542e5b6d6dSopenharmony_ci  <li><a href="#SubmittingComments">Submitting Comments, Requesting
552e5b6d6dSopenharmony_ciFeatures and Reporting Bugs</a></li>
562e5b6d6dSopenharmony_ci</ul>
572e5b6d6dSopenharmony_ci<h2 class="doc"><a name="introduction"></a>Introduction to ICU4J</h2>
582e5b6d6dSopenharmony_ci<p>The International Components for Unicode (ICU) library provides
592e5b6d6dSopenharmony_cirobust and
602e5b6d6dSopenharmony_cifull-featured Unicode services on a wide variety of platforms. ICU
612e5b6d6dSopenharmony_cisupports the
622e5b6d6dSopenharmony_cimost current version of the Unicode standard, including support for
632e5b6d6dSopenharmony_cisupplementary characters (needed for GB 18030 repertoire support).</p>
642e5b6d6dSopenharmony_ci<p>Java provides a strong foundation for global programs, and IBM and
652e5b6d6dSopenharmony_cithe
662e5b6d6dSopenharmony_ciICU team played a key role in providing globalization technology to
672e5b6d6dSopenharmony_ciJava. But because of its long release schedule, Java cannot always keep
682e5b6d6dSopenharmony_ciup with evolving standards. The ICU team continues to extend Java's
692e5b6d6dSopenharmony_ciUnicode and internationalization support, focusing on improving
702e5b6d6dSopenharmony_ciperformance,
712e5b6d6dSopenharmony_cikeeping current with the Unicode standard, and providing richer APIs,
722e5b6d6dSopenharmony_ciwhile
732e5b6d6dSopenharmony_ciremaining as compatible as possible with the original Java text and
742e5b6d6dSopenharmony_ciinternationalization API design.</p>
752e5b6d6dSopenharmony_ci<p>ICU4J is an add-on to the regular JRE that provides:
762e5b6d6dSopenharmony_ci</p>
772e5b6d6dSopenharmony_ci<ul>
782e5b6d6dSopenharmony_ci  <li><a
792e5b6d6dSopenharmony_ci href="http://userguide.icu-project.org/collation"><b>Collation</b></a>
802e5b6d6dSopenharmony_ci&#8211; rule-based, up-to-date Unicode Collation Algorithm (UCA) sorting order<br>
812e5b6d6dSopenharmony_ci&nbsp;&nbsp;&nbsp;&nbsp;For fast multilingual string comparison; faster
822e5b6d6dSopenharmony_ciand more complete than
832e5b6d6dSopenharmony_cithe J2SE implementation</li>
842e5b6d6dSopenharmony_ci  <li><a href="http://userguide.icu-project.org/conversion/detection"><b>Charset
852e5b6d6dSopenharmony_ciDetection</b></a> &#8211; Recognition of various single and multibyte charsets<br>
862e5b6d6dSopenharmony_ci&nbsp;&nbsp;&nbsp;&nbsp;Useful for recognizing untagged text data</li>
872e5b6d6dSopenharmony_ci  <li><a
882e5b6d6dSopenharmony_ci href="http://userguide.icu-project.org/strings/unicodeset"><b>UnicodeSet</b></a>
892e5b6d6dSopenharmony_ci&#8211; standard set operations optimized for sets of Unicode characters<br>
902e5b6d6dSopenharmony_ci&nbsp;&nbsp;&nbsp;&nbsp;UnicodeSets can be built from string patterns
912e5b6d6dSopenharmony_ciusing any Unicode properties.</li>
922e5b6d6dSopenharmony_ci  <li><a href="http://userguide.icu-project.org/transforms"><b>Transforms</b></a>
932e5b6d6dSopenharmony_ci&#8211; a flexible mechanism for Unicode text conversions<br>
942e5b6d6dSopenharmony_ci&nbsp;&nbsp;&nbsp;&nbsp;Including Full/Halfwidth conversions,
952e5b6d6dSopenharmony_ciNormalization, Case conversions, Hex
962e5b6d6dSopenharmony_ciconversions, and transliterations between scripts (50+ pairs)</li>
972e5b6d6dSopenharmony_ci  <li><a
982e5b6d6dSopenharmony_ci href="http://userguide.icu-project.org/transforms/normalization"><b>Unicode
992e5b6d6dSopenharmony_ciNormalization</b></a> &#8211; NFC, NFD, NFKD, NFKC<br>
1002e5b6d6dSopenharmony_ci&nbsp;&nbsp;&nbsp;&nbsp;For canonical text representations, needed for
1012e5b6d6dSopenharmony_ciXML and the net</li>
1022e5b6d6dSopenharmony_ci  <li><a
1032e5b6d6dSopenharmony_ci href="http://userguide.icu-project.org/datetime/calendar"><b>International
1042e5b6d6dSopenharmony_ciCalendars</b></a> &#8211; Arabic, Buddhist, Chinese, Hebrew, Japanese, Ethiopic, Islamic, Coptic and other calendars<br>
1052e5b6d6dSopenharmony_ci&nbsp;&nbsp;&nbsp;&nbsp;Required for correct presentation of dates in
1062e5b6d6dSopenharmony_cicertain countries</li>
1072e5b6d6dSopenharmony_ci  <li><a
1082e5b6d6dSopenharmony_ci href="http://userguide.icu-project.org/formatparse/datetime"><b>Date
1092e5b6d6dSopenharmony_ciFormat
1102e5b6d6dSopenharmony_ciEnhancements</b></a> &#8211; Date/time pattern generator, Relative date formatting, etc.<br>
1112e5b6d6dSopenharmony_ci&nbsp;&nbsp;&nbsp;&nbsp;Enhancements to the normal Java date
1122e5b6d6dSopenharmony_ciformatting.</li>
1132e5b6d6dSopenharmony_ci  <li><a
1142e5b6d6dSopenharmony_ci href="http://userguide.icu-project.org/formatparse/numbers"><b>Number
1152e5b6d6dSopenharmony_ciFormat
1162e5b6d6dSopenharmony_ciEnhancements</b></a> &#8211; Scientific Notation, Spelled-out, Compact decimal format, etc.<br>
1172e5b6d6dSopenharmony_ci&nbsp;&nbsp;&nbsp;&nbsp;Enhancements to the normal Java number
1182e5b6d6dSopenharmony_ciformatting. The spell-out format is
1192e5b6d6dSopenharmony_ciused for checks and similar documents</li>
1202e5b6d6dSopenharmony_ci  <li><a
1212e5b6d6dSopenharmony_ci href="http://userguide.icu-project.org/boundaryanalysis"><b>Enhanced
1222e5b6d6dSopenharmony_ciWord-Break Detection</b></a> &#8211; Rule-based, supports Thai, Khmer, Chinese, etc.<br>
1232e5b6d6dSopenharmony_ci&nbsp;&nbsp;&nbsp;&nbsp;Required for correct support of Thai</li>
1242e5b6d6dSopenharmony_ci  <li><a
1252e5b6d6dSopenharmony_ci href="http://userguide.icu-project.org/conversion/compression"><b>Unicode
1262e5b6d6dSopenharmony_ciText
1272e5b6d6dSopenharmony_ciCompression</b></a> &#8211; Standard compression of Unicode text<br>
1282e5b6d6dSopenharmony_ci&nbsp;&nbsp;&nbsp;&nbsp;Suitable for large numbers of small fields,
1292e5b6d6dSopenharmony_ciwhere LZW and similar schemes
1302e5b6d6dSopenharmony_cido not apply</li>
1312e5b6d6dSopenharmony_ci  <li><a
1322e5b6d6dSopenharmony_ci href="http://userguide.icu-project.org/conversion"><b>Charset Conversion</b></a> &#8211; Conversion to and from different charsets.<br>
1332e5b6d6dSopenharmony_ci&nbsp;&nbsp;&nbsp;&nbsp;Plugs into Java CharsetProvider Service Provider Interface (SPI)</li>
1342e5b6d6dSopenharmony_ci
1352e5b6d6dSopenharmony_ci</ul>
1362e5b6d6dSopenharmony_ci<blockquote>
1372e5b6d6dSopenharmony_ci  <p><b>Note:</b> We continue to provide assistance to Java, and in some
1382e5b6d6dSopenharmony_cicases, ICU4J support has been rolled into a later release of Java. For
1392e5b6d6dSopenharmony_ciexample, BCP47 language tag support including Unicode locale extensions
1402e5b6d6dSopenharmony_ciis now in Java 7. However, the most current and complete version is always
1412e5b6d6dSopenharmony_cifound in ICU4J.</p>
1422e5b6d6dSopenharmony_ci</blockquote>
1432e5b6d6dSopenharmony_ci
1442e5b6d6dSopenharmony_ci<h2 class="doc"><a name="changes"></a>Changes In This Release</h2>
1452e5b6d6dSopenharmony_ci
1462e5b6d6dSopenharmony_ci<p>See the <a href="http://site.icu-project.org/download/67">ICU 67 download page</a>
1472e5b6d6dSopenharmony_cifor more informantion about changes in this release.</p>
1482e5b6d6dSopenharmony_ci<p>The list of API changes since the previous ICU4J release is available
1492e5b6d6dSopenharmony_ci<a href="APIChangeReport.html">here</a>.</p>
1502e5b6d6dSopenharmony_ci
1512e5b6d6dSopenharmony_ci<h2 class="doc"><a name="license"></a>License Information</h2>
1522e5b6d6dSopenharmony_ci<p>
1532e5b6d6dSopenharmony_ciThe ICU projects (ICU4C and ICU4J) are hosted by the
1542e5b6d6dSopenharmony_ci<a href="http://www.unicode.org/">Unicode Consortium</a>. The ICU binary
1552e5b6d6dSopenharmony_ciand source files are distributed under the
1562e5b6d6dSopenharmony_ci<a href="http://www.unicode.org/copyright.html#License">UNICODE DATA FILES
1572e5b6d6dSopenharmony_ciAND SOFTWARE LICENSE</a>. The full copy of the license and third party
1582e5b6d6dSopenharmony_cisoftware licenses are available in <a href="./main/shared/licenses/LICENSE">LICENSE</a>
1592e5b6d6dSopenharmony_cifile included in this package.
1602e5b6d6dSopenharmony_ci</p>
1612e5b6d6dSopenharmony_ci<h2 class="doc"><a name="PlatformDependencies"></a>Platform Dependencies</h2>
1622e5b6d6dSopenharmony_ci<p>
1632e5b6d6dSopenharmony_ciThe minimum Java runtime version supported by ICU4J 67 is version 7. Java runtime version 6 is not supported.
1642e5b6d6dSopenharmony_ci</p>
1652e5b6d6dSopenharmony_ci<p>
1662e5b6d6dSopenharmony_ciICU4J since version 63 depend on J2SE 7 functionality. Therefore, ICU4J only runs on
1672e5b6d6dSopenharmony_ciJRE version 7 or later. ICU4J 67 is tested on JRE 7, 8, 9, 10 and 11.
1682e5b6d6dSopenharmony_ci</p>
1692e5b6d6dSopenharmony_ci
1702e5b6d6dSopenharmony_ci<h2 class="doc"><a name="download"></a>How to Download ICU4J</h2>
1712e5b6d6dSopenharmony_ci<p>There are a few different ways to download the ICU4J releases.
1722e5b6d6dSopenharmony_ci</p>
1732e5b6d6dSopenharmony_ci<ul type="disc">
1742e5b6d6dSopenharmony_ci  <li><b>Official Release:</b><br>
1752e5b6d6dSopenharmony_ciIf you want to use ICU4J (as opposed to developing it), your best bet
1762e5b6d6dSopenharmony_ciis to download an official, packaged version of the ICU4J library files.
1772e5b6d6dSopenharmony_ciThese versions are tested more thoroughly than day-to-day development
1782e5b6d6dSopenharmony_cibuilds, and they are packaged in jar files for convenient download.
1792e5b6d6dSopenharmony_ci  <ul>
1802e5b6d6dSopenharmony_ci    <li><a href="http://www.icu-project.org/download/">ICU Download page</a>.</li>
1812e5b6d6dSopenharmony_ci    <li>Maven repository:
1822e5b6d6dSopenharmony_ci<pre>
1832e5b6d6dSopenharmony_ci&lt;dependency&gt;
1842e5b6d6dSopenharmony_ci    &lt;groupId&gt;com.ibm.icu&lt;/groupId&gt;
1852e5b6d6dSopenharmony_ci    &lt;artifactId&gt;icu4j&lt;/artifactId&gt;
1862e5b6d6dSopenharmony_ci    &lt;version&gt;67.1&lt;/version&gt;
1872e5b6d6dSopenharmony_ci&lt;/dependency&gt;
1882e5b6d6dSopenharmony_ci
1892e5b6d6dSopenharmony_ci&lt;dependency&gt;
1902e5b6d6dSopenharmony_ci    &lt;groupId&gt;com.ibm.icu&lt;/groupId&gt;
1912e5b6d6dSopenharmony_ci    &lt;artifactId&gt;icu4j-charset&lt;/artifactId&gt;
1922e5b6d6dSopenharmony_ci    &lt;version&gt;67.1&lt;/version&gt;
1932e5b6d6dSopenharmony_ci&lt;/dependency&gt;
1942e5b6d6dSopenharmony_ci
1952e5b6d6dSopenharmony_ci&lt;dependency&gt;
1962e5b6d6dSopenharmony_ci    &lt;groupId&gt;com.ibm.icu&lt;/groupId&gt;
1972e5b6d6dSopenharmony_ci    &lt;artifactId&gt;icu4j-localespi&lt;/artifactId&gt;
1982e5b6d6dSopenharmony_ci    &lt;version&gt;67.1&lt;/version&gt;
1992e5b6d6dSopenharmony_ci&lt;/dependency&gt;
2002e5b6d6dSopenharmony_ci</pre>
2012e5b6d6dSopenharmony_ci  </ul>
2022e5b6d6dSopenharmony_ci</ul>
2032e5b6d6dSopenharmony_ci<ul type="disc">
2042e5b6d6dSopenharmony_ci  <li><b>GitHub Source Repository:</b><br>
2052e5b6d6dSopenharmony_ciIf you are interested in developing features, patches, or bug fixes for
2062e5b6d6dSopenharmony_ciICU4J, you should probably be working with the latest version of the
2072e5b6d6dSopenharmony_ciICU4J source code. You will need to clone and checkout the code from our GitHub
2082e5b6d6dSopenharmony_cirepository to ensure that you have the most recent version of all of
2092e5b6d6dSopenharmony_cithe files. There are several ways to do this. Please follow the
2102e5b6d6dSopenharmony_cidirections that are contained on the <a
2112e5b6d6dSopenharmony_ci href="http://www.icu-project.org/repository/">Source
2122e5b6d6dSopenharmony_ci Repository page</a> for details.
2132e5b6d6dSopenharmony_ci  </li>
2142e5b6d6dSopenharmony_ci</ul>
2152e5b6d6dSopenharmony_ci<p>For more details on how to download ICU4J directly from the web
2162e5b6d6dSopenharmony_cisite, please see the ICU download page at <a
2172e5b6d6dSopenharmony_ci href="http://www.icu-project.org/download/">http://www.icu-project.org/download/</a>
2182e5b6d6dSopenharmony_ci</p>
2192e5b6d6dSopenharmony_ci<h2 class="doc"><a name="WhatContain"></a>The Structure and Contents of
2202e5b6d6dSopenharmony_ciICU4J</h2>
2212e5b6d6dSopenharmony_ci<p>Below, all directory pathes are relative to the directory where the
2222e5b6d6dSopenharmony_ciICU4J source archive is extracted.
2232e5b6d6dSopenharmony_ci</p>
2242e5b6d6dSopenharmony_ci<p><b>Information and build files:</b></p>
2252e5b6d6dSopenharmony_ci<table border="1">
2262e5b6d6dSopenharmony_ci<tr>
2272e5b6d6dSopenharmony_ci  <th>Path</th>
2282e5b6d6dSopenharmony_ci  <th>Description</th>
2292e5b6d6dSopenharmony_ci</tr>
2302e5b6d6dSopenharmony_ci<tr>
2312e5b6d6dSopenharmony_ci  <td>readme.html</td>
2322e5b6d6dSopenharmony_ci  <td>A description of ICU4J (International Components for Unicode for Java)</td>
2332e5b6d6dSopenharmony_ci</tr>
2342e5b6d6dSopenharmony_ci<tr>
2352e5b6d6dSopenharmony_ci  <td>build.html</td>
2362e5b6d6dSopenharmony_ci  <td>The main Ant build file for ICU4J.  See <a href="#HowToInstallJavac">How to Install
2372e5b6d6dSopenharmony_ci  and Build</a> for more information</td>
2382e5b6d6dSopenharmony_ci</tr>
2392e5b6d6dSopenharmony_ci<tr>
2402e5b6d6dSopenharmony_ci  <td>main/shared/licenses/LICENSE</td>
2412e5b6d6dSopenharmony_ci  <td>ICU license</td>
2422e5b6d6dSopenharmony_ci</tr>
2432e5b6d6dSopenharmony_ci</table>
2442e5b6d6dSopenharmony_ci
2452e5b6d6dSopenharmony_ci<p><b>ICU4J runtime class files:</b></p>
2462e5b6d6dSopenharmony_ci<table border="1">
2472e5b6d6dSopenharmony_ci<tr>
2482e5b6d6dSopenharmony_ci  <th>Path</th>
2492e5b6d6dSopenharmony_ci  <th>Sub-component Name</th>
2502e5b6d6dSopenharmony_ci  <th>Build Dependencies</th>
2512e5b6d6dSopenharmony_ci  <th>Public API Packages</th>
2522e5b6d6dSopenharmony_ci  <th>Description</th>
2532e5b6d6dSopenharmony_ci</tr>
2542e5b6d6dSopenharmony_ci<tr>
2552e5b6d6dSopenharmony_ci  <td>main/classes/charset</td>
2562e5b6d6dSopenharmony_ci  <td>icu4j-charset</td>
2572e5b6d6dSopenharmony_ci  <td>icu4j-core</td>
2582e5b6d6dSopenharmony_ci  <td>com.ibm.icu.charset</td>
2592e5b6d6dSopenharmony_ci  <td>Implementation of <code>java.nio.charset.spi.CharsetProvider</code>.
2602e5b6d6dSopenharmony_ci  This sub-component is shipped as icu4j-charset.jar along with
2612e5b6d6dSopenharmony_ci  ICU charset converter data files.</td>
2622e5b6d6dSopenharmony_ci</tr>
2632e5b6d6dSopenharmony_ci<tr>
2642e5b6d6dSopenharmony_ci  <td>main/classes/collate</td>
2652e5b6d6dSopenharmony_ci  <td>icu4j-collate</td>
2662e5b6d6dSopenharmony_ci  <td>icu4j-core</td>
2672e5b6d6dSopenharmony_ci  <td>com.ibm.icu.text<br>
2682e5b6d6dSopenharmony_ci  com.ibm.icu.util</td>
2692e5b6d6dSopenharmony_ci  <td>Collator APIs and implementation.  Also includes some public API classes
2702e5b6d6dSopenharmony_ci  that depend on Collator.
2712e5b6d6dSopenharmony_ci  This sub-component is packaged as a part of icu4j.jar.</td>
2722e5b6d6dSopenharmony_ci</tr>
2732e5b6d6dSopenharmony_ci<tr>
2742e5b6d6dSopenharmony_ci  <td>main/classes/core</td>
2752e5b6d6dSopenharmony_ci  <td>icu4j-core</td>
2762e5b6d6dSopenharmony_ci  <td>n/a</td>
2772e5b6d6dSopenharmony_ci  <td>com.ibm.icu.lang<br>
2782e5b6d6dSopenharmony_ci  com.ibm.icu.math<br>
2792e5b6d6dSopenharmony_ci  com.ibm.icu.text<br>
2802e5b6d6dSopenharmony_ci  com.ibm.icu.util</td>
2812e5b6d6dSopenharmony_ci  <td>ICU core API classes and implementation.
2822e5b6d6dSopenharmony_ci  This sub-component is packaged as a part of icu4j.jar.</td>
2832e5b6d6dSopenharmony_ci</tr>
2842e5b6d6dSopenharmony_ci<tr>
2852e5b6d6dSopenharmony_ci  <td>main/classes/currdata</td>
2862e5b6d6dSopenharmony_ci  <td>icu4j-currdata</td>
2872e5b6d6dSopenharmony_ci  <td>icu4j-core</td>
2882e5b6d6dSopenharmony_ci  <td>n/a</td>
2892e5b6d6dSopenharmony_ci  <td>No public API classes.  Provides access to currency display data.
2902e5b6d6dSopenharmony_ci  This sub-component is packaged as a part of icu4j.jar.</td>
2912e5b6d6dSopenharmony_ci</tr>
2922e5b6d6dSopenharmony_ci<tr>
2932e5b6d6dSopenharmony_ci  <td>main/classes/langdata</td>
2942e5b6d6dSopenharmony_ci  <td>icu4j-langdata</td>
2952e5b6d6dSopenharmony_ci  <td>icu4j-core</td>
2962e5b6d6dSopenharmony_ci  <td>n/a</td>
2972e5b6d6dSopenharmony_ci  <td>No public API classes.  Provides access to language display data.
2982e5b6d6dSopenharmony_ci  This sub-component is packaged as a part of icu4j.jar.</td>
2992e5b6d6dSopenharmony_ci</tr>
3002e5b6d6dSopenharmony_ci<tr>
3012e5b6d6dSopenharmony_ci  <td>main/classes/localespi</td>
3022e5b6d6dSopenharmony_ci  <td>icu4j-localespi</td>
3032e5b6d6dSopenharmony_ci  <td>icu4j-core<br>
3042e5b6d6dSopenharmony_ci  icu4j-collate<br>
3052e5b6d6dSopenharmony_ci  </td>
3062e5b6d6dSopenharmony_ci  <td>n/a</td>
3072e5b6d6dSopenharmony_ci  <td>Implementation of various locale-sensitive service providers defined
3082e5b6d6dSopenharmony_ci  in <code>java.text.spi</code> and <code>java.util.spi</code> in J2SE 6.0
3092e5b6d6dSopenharmony_ci  or later Java releases.
3102e5b6d6dSopenharmony_ci  This sub-component is shipped as icu4j-localespi.jar.</td>
3112e5b6d6dSopenharmony_ci</tr>
3122e5b6d6dSopenharmony_ci<tr>
3132e5b6d6dSopenharmony_ci  <td>main/classes/regiondata</td>
3142e5b6d6dSopenharmony_ci  <td>icu4j-regiondata</td>
3152e5b6d6dSopenharmony_ci  <td>icu4j-core</td>
3162e5b6d6dSopenharmony_ci  <td>n/a</td>
3172e5b6d6dSopenharmony_ci  <td>No public API classes.  Provides access to region display data.
3182e5b6d6dSopenharmony_ci  This sub-component is packaged as a part of icu4j.jar.</td>
3192e5b6d6dSopenharmony_ci</tr>
3202e5b6d6dSopenharmony_ci<tr>
3212e5b6d6dSopenharmony_ci  <td>main/classes/translit</td>
3222e5b6d6dSopenharmony_ci  <td>icu4j-translit</td>
3232e5b6d6dSopenharmony_ci  <td>icu4j-core</td>
3242e5b6d6dSopenharmony_ci  <td>com.ibm.icu.text</td>
3252e5b6d6dSopenharmony_ci  <td>Transliterator APIs and implementation.
3262e5b6d6dSopenharmony_ci  This sub-component is packaged as a part of icu4j.jar.</td>
3272e5b6d6dSopenharmony_ci</tr>
3282e5b6d6dSopenharmony_ci</table>
3292e5b6d6dSopenharmony_ci
3302e5b6d6dSopenharmony_ci<p><b>ICU4J unit test files:</b></p>
3312e5b6d6dSopenharmony_ci<table border="1">
3322e5b6d6dSopenharmony_ci<tr>
3332e5b6d6dSopenharmony_ci  <th>Path</th>
3342e5b6d6dSopenharmony_ci  <th>Sub-component Name</th>
3352e5b6d6dSopenharmony_ci  <th>Runtime Dependencies</th>
3362e5b6d6dSopenharmony_ci  <th>Description</th>
3372e5b6d6dSopenharmony_ci</tr>
3382e5b6d6dSopenharmony_ci<tr>
3392e5b6d6dSopenharmony_ci  <td>main/tests/charset</td>
3402e5b6d6dSopenharmony_ci  <td>icu4j-charset-tests</td>
3412e5b6d6dSopenharmony_ci  <td>icu4j-charset<br>
3422e5b6d6dSopenharmony_ci  icu4j-core<br>
3432e5b6d6dSopenharmony_ci  icu4j-test-framework</td>
3442e5b6d6dSopenharmony_ci  <td>Test suite for charset sub-component.</td>
3452e5b6d6dSopenharmony_ci</tr>
3462e5b6d6dSopenharmony_ci<tr>
3472e5b6d6dSopenharmony_ci  <td>main/tests/collate</td>
3482e5b6d6dSopenharmony_ci  <td>icu4j-collate-tests</td>
3492e5b6d6dSopenharmony_ci  <td>icu4j-collate<br>
3502e5b6d6dSopenharmony_ci  icu4j-core<br>
3512e5b6d6dSopenharmony_ci  icu4j-test-framework</td>
3522e5b6d6dSopenharmony_ci  <td>Test suite for collate sub-component.</td>
3532e5b6d6dSopenharmony_ci</tr>
3542e5b6d6dSopenharmony_ci<tr>
3552e5b6d6dSopenharmony_ci  <td>main/tests/core</td>
3562e5b6d6dSopenharmony_ci  <td>icu4j-core-tests</td>
3572e5b6d6dSopenharmony_ci  <td>icu4j-core<br>
3582e5b6d6dSopenharmony_ci  icu4j-currdata<br>
3592e5b6d6dSopenharmony_ci  icu4j-langdata<br>
3602e5b6d6dSopenharmony_ci  icu4j-regiondata<br>
3612e5b6d6dSopenharmony_ci  icu4j-test-framework</td>
3622e5b6d6dSopenharmony_ci  <td>Test suite for core sub-component.</td>
3632e5b6d6dSopenharmony_ci</tr>
3642e5b6d6dSopenharmony_ci<tr>
3652e5b6d6dSopenharmony_ci  <td>main/tests/framework</td>
3662e5b6d6dSopenharmony_ci  <td>icu4j-test-framework</td>
3672e5b6d6dSopenharmony_ci  <td>icu4j-core</td>
3682e5b6d6dSopenharmony_ci  <td>Common ICU4J unit test framework and utilities.</td>
3692e5b6d6dSopenharmony_ci</tr>
3702e5b6d6dSopenharmony_ci<tr>
3712e5b6d6dSopenharmony_ci  <td>main/tests/localespi</td>
3722e5b6d6dSopenharmony_ci  <td>icu4j-localespi-tests</td>
3732e5b6d6dSopenharmony_ci  <td>icu4j-core<br>
3742e5b6d6dSopenharmony_ci  icu4j-collate<br>
3752e5b6d6dSopenharmony_ci  icu4j-currdata<br>
3762e5b6d6dSopenharmony_ci  icu4j-langdata<br>
3772e5b6d6dSopenharmony_ci  icu4j-localespi<br>
3782e5b6d6dSopenharmony_ci  icu4j-regiondata<br>
3792e5b6d6dSopenharmony_ci  icu4j-test-framework</td>
3802e5b6d6dSopenharmony_ci  <td>Test suite for localespi sub-component.</td>
3812e5b6d6dSopenharmony_ci</tr>
3822e5b6d6dSopenharmony_ci<tr>
3832e5b6d6dSopenharmony_ci  <td>main/tests/packaging</td>
3842e5b6d6dSopenharmony_ci  <td>icu4j-packaging-tests</td>
3852e5b6d6dSopenharmony_ci  <td>icu4j-core<br>
3862e5b6d6dSopenharmony_ci  icu4j-test-framework</td>
3872e5b6d6dSopenharmony_ci  <td>Test suite for sub-component packaging.</td>
3882e5b6d6dSopenharmony_ci</tr>
3892e5b6d6dSopenharmony_ci<tr>
3902e5b6d6dSopenharmony_ci  <td>main/tests/translit</td>
3912e5b6d6dSopenharmony_ci  <td>icu4j-translit-tests</td>
3922e5b6d6dSopenharmony_ci  <td>icu4j-core<br>
3932e5b6d6dSopenharmony_ci  icu4j-translit
3942e5b6d6dSopenharmony_ci  icu4j-test-framework</td>
3952e5b6d6dSopenharmony_ci  <td>Test suite for translit sub-component.</td>
3962e5b6d6dSopenharmony_ci</tr>
3972e5b6d6dSopenharmony_ci</table>
3982e5b6d6dSopenharmony_ci
3992e5b6d6dSopenharmony_ci<p><b>Others:</b></p>
4002e5b6d6dSopenharmony_ci<table border="1">
4012e5b6d6dSopenharmony_ci<tr>
4022e5b6d6dSopenharmony_ci  <th>Path</th>
4032e5b6d6dSopenharmony_ci  <th>Description</th>
4042e5b6d6dSopenharmony_ci</tr>
4052e5b6d6dSopenharmony_ci<tr>
4062e5b6d6dSopenharmony_ci  <td>main/shared</td>
4072e5b6d6dSopenharmony_ci  <td>Files shared by ICU4J sub-components under the <code>main</code> directory including:
4082e5b6d6dSopenharmony_ci  <ul>
4092e5b6d6dSopenharmony_ci    <li>ICU4J runtime data archive (icudata.jar).</li>
4102e5b6d6dSopenharmony_ci    <li>ICU4J unit test data archive (testdata.jar).</li>
4112e5b6d6dSopenharmony_ci    <li>Shared Ant build script and configuration files.</li>
4122e5b6d6dSopenharmony_ci    <li>License files.</li>
4132e5b6d6dSopenharmony_ci  </ul>
4142e5b6d6dSopenharmony_ci  </td>
4152e5b6d6dSopenharmony_ci</tr>
4162e5b6d6dSopenharmony_ci<tr>
4172e5b6d6dSopenharmony_ci  <td>demos</td>
4182e5b6d6dSopenharmony_ci  <td>ICU4J demo programs.</td>
4192e5b6d6dSopenharmony_ci</tr>
4202e5b6d6dSopenharmony_ci<tr>
4212e5b6d6dSopenharmony_ci  <td>perf-tests</td>
4222e5b6d6dSopenharmony_ci  <td>ICU4J performance test files.</td>
4232e5b6d6dSopenharmony_ci</tr>
4242e5b6d6dSopenharmony_ci<tr>
4252e5b6d6dSopenharmony_ci  <td>tools</td>
4262e5b6d6dSopenharmony_ci  <td>ICU4J tools including:
4272e5b6d6dSopenharmony_ci  <ul>
4282e5b6d6dSopenharmony_ci    <li>Custom JavaDoc taglets used for generating ICU4J API references.</li>
4292e5b6d6dSopenharmony_ci    <li>API report tool and data.</li>
4302e5b6d6dSopenharmony_ci    <li>Other independent utilities used for ICU4J development.</li>
4312e5b6d6dSopenharmony_ci  </ul>
4322e5b6d6dSopenharmony_ci  </td>
4332e5b6d6dSopenharmony_ci</tr>
4342e5b6d6dSopenharmony_ci<tr>
4352e5b6d6dSopenharmony_ci  <td>lib</td>
4362e5b6d6dSopenharmony_ci  <td>Folder used for downloading depedency libraries.<br>
4372e5b6d6dSopenharmony_ci  <b>Note:</b> ICU4J runtime libraries do not depend on any external libraries other
4382e5b6d6dSopenharmony_ci  than JDK. These dependencies are for testing (such as JUnit).</td>
4392e5b6d6dSopenharmony_ci</tr>
4402e5b6d6dSopenharmony_ci</table>
4412e5b6d6dSopenharmony_ci
4422e5b6d6dSopenharmony_ci<h2 class="doc"><a name="API"></a>Where to get Documentation</h2>
4432e5b6d6dSopenharmony_ci<p>The <a href="http://userguide.icu-project.org/">ICU user's
4442e5b6d6dSopenharmony_ciguide</a> contains lots of general information about ICU, in its C,
4452e5b6d6dSopenharmony_ciC++, and Java incarnations.</p>
4462e5b6d6dSopenharmony_ci<p>The complete API documentation for ICU4J (javadoc) is available on
4472e5b6d6dSopenharmony_cithe ICU4J web site, and can be built from the sources:
4482e5b6d6dSopenharmony_ci</p>
4492e5b6d6dSopenharmony_ci<ul>
4502e5b6d6dSopenharmony_ci  <li><a href="http://www.icu-project.org/apiref/icu4j/">Index
4512e5b6d6dSopenharmony_cito all ICU4J API</a></li>
4522e5b6d6dSopenharmony_ci  <li><a href="http://www.icu-project.org/apiref/icu4j/com/ibm/icu/text/CharsetDetector.html">Charset Detector</a> &#8211; Detection of charset from a byte stream</li>
4532e5b6d6dSopenharmony_ci  <li>International Calendars &#8211; 
4542e5b6d6dSopenharmony_ci    <a
4552e5b6d6dSopenharmony_ci href="http://www.icu-project.org/apiref/icu4j/com/ibm/icu/util/BuddhistCalendar.html">Buddhist</a>,
4562e5b6d6dSopenharmony_ci    <a
4572e5b6d6dSopenharmony_ci href="http://www.icu-project.org/apiref/icu4j/com/ibm/icu/util/ChineseCalendar.html">Chinese</a>,
4582e5b6d6dSopenharmony_ci    <a
4592e5b6d6dSopenharmony_ci href="http://www.icu-project.org/apiref/icu4j/com/ibm/icu/util/CopticCalendar.html">Coptic</a>,
4602e5b6d6dSopenharmony_ci    <a
4612e5b6d6dSopenharmony_ci href="http://www.icu-project.org/apiref/icu4j/com/ibm/icu/util/EthiopicCalendar.html">Ethiopic</a>,
4622e5b6d6dSopenharmony_ci    <a
4632e5b6d6dSopenharmony_ci href="http://www.icu-project.org/apiref/icu4j/com/ibm/icu/util/GregorianCalendar.html">Gregorian</a>,
4642e5b6d6dSopenharmony_ci    <a
4652e5b6d6dSopenharmony_ci href="http://www.icu-project.org/apiref/icu4j/com/ibm/icu/util/HebrewCalendar.html">Hebrew</a>,
4662e5b6d6dSopenharmony_ci    <a
4672e5b6d6dSopenharmony_ci href="http://www.icu-project.org/apiref/icu4j/com/ibm/icu/util/IndianCalendar.html">Indian</a>,
4682e5b6d6dSopenharmony_ci    <a
4692e5b6d6dSopenharmony_ci href="http://www.icu-project.org/apiref/icu4j/com/ibm/icu/util/IslamicCalendar.html">Islamic</a>,
4702e5b6d6dSopenharmony_ci    <a
4712e5b6d6dSopenharmony_ci href="http://www.icu-project.org/apiref/icu4j/com/ibm/icu/util/JapaneseCalendar.html">Japanese</a>,
4722e5b6d6dSopenharmony_ci    Persian, Dangi.</li>
4732e5b6d6dSopenharmony_ci  <li>Time Zone Enhancements &#8211;
4742e5b6d6dSopenharmony_ci<a href="http://www.icu-project.org/apiref/icu4j/com/ibm/icu/util/BasicTimeZone.html">Time zone transition and rule detection</a>,
4752e5b6d6dSopenharmony_ci<a href="http://www.icu-project.org/apiref/icu4j/com/ibm/icu/util/VTimeZone.html">iCalendar VTIMEZONE formatting and parsing</a>,
4762e5b6d6dSopenharmony_ci<a href="http://www.icu-project.org/apiref/icu4j/com/ibm/icu/util/RuleBasedTimeZone.html">Custom time zones constructed by user defined rules</a>.
4772e5b6d6dSopenharmony_ci  <li>Date Format Enhancements &#8211; <a href="http://www.icu-project.org/apiref/icu4j/com/ibm/icu/text/DateTimePatternGenerator.html">Date/Time Pattern Generator</a>,
4782e5b6d6dSopenharmony_ci<a href="http://www.icu-project.org/apiref/icu4j/com/ibm/icu/text/DateIntervalFormat.html">Date Interval Format</a>,
4792e5b6d6dSopenharmony_ci<a href="http://www.icu-project.org/apiref/icu4j/com/ibm/icu/text/DurationFormat.html">Duration Format</a>.
4802e5b6d6dSopenharmony_ci  <li><a
4812e5b6d6dSopenharmony_ci href="http://www.icu-project.org/apiref/icu4j/com/ibm/icu/text/Normalizer.html">Unicode
4822e5b6d6dSopenharmony_ciNormalization</a> &#8211; Canonical text representation for W3C.</li>
4832e5b6d6dSopenharmony_ci  <li><a
4842e5b6d6dSopenharmony_ci href="http://www.icu-project.org/apiref/icu4j/com/ibm/icu/text/NumberFormat.html">Number
4852e5b6d6dSopenharmony_ciFormat Enhancements</a> &#8211; Scientific Notation, Spelled out.</li>
4862e5b6d6dSopenharmony_ci  <li><a
4872e5b6d6dSopenharmony_ci href="http://www.icu-project.org/apiref/icu4j/com/ibm/icu/text/BreakIterator.html">Enhanced
4882e5b6d6dSopenharmony_ciword-break detection</a> &#8211; Rule-based, supports Thai</li>
4892e5b6d6dSopenharmony_ci  <li><a
4902e5b6d6dSopenharmony_ci href="http://www.icu-project.org/apiref/icu4j/com/ibm/icu/text/Transliterator.html">Transliteration</a>
4912e5b6d6dSopenharmony_ci&#8211; A general framework for converting text from one format to another,
4922e5b6d6dSopenharmony_cie.g. Cyrillic to Latin, or Hex to Unicode. </li>
4932e5b6d6dSopenharmony_ci  <li>Unicode Text <a
4942e5b6d6dSopenharmony_ci href="http://www.icu-project.org/apiref/icu4j/com/ibm/icu/text/UnicodeCompressor.html">Compression</a>
4952e5b6d6dSopenharmony_ci&amp; <a
4962e5b6d6dSopenharmony_ci href="http://www.icu-project.org/apiref/icu4j/com/ibm/icu/text/UnicodeDecompressor.html">Decompression</a>
4972e5b6d6dSopenharmony_ci&#8211; 2:1 compression on English Unicode text.</li>
4982e5b6d6dSopenharmony_ci  <li>Collation &#8211; <a
4992e5b6d6dSopenharmony_ci href="http://www.icu-project.org/apiref/icu4j/com/ibm/icu/text/RuleBasedCollator.html">Rule-based
5002e5b6d6dSopenharmony_cisorting</a>, <a
5012e5b6d6dSopenharmony_ci href="http://www.icu-project.org/apiref/icu4j/com/ibm/icu/text/StringSearch.html">Efficient
5022e5b6d6dSopenharmony_cimulti-lingual searching</a>,
5032e5b6d6dSopenharmony_ci<a href="http://www.icu-project.org/apiref/icu4j/com/ibm/icu/text/AlphabeticIndex.html">Alphabetic indexing</a></li>
5042e5b6d6dSopenharmony_ci</ul>
5052e5b6d6dSopenharmony_ci<h2 class="doc"><a name="HowToInstallJavac"></a>How to Install and Build</h2>
5062e5b6d6dSopenharmony_ci<p>
5072e5b6d6dSopenharmony_ciTo install ICU4J, simply place the pre-built jar file <strong>icu4j.jar</strong>
5082e5b6d6dSopenharmony_cion your Java CLASSPATH. If you need Charset API support please also place
5092e5b6d6dSopenharmony_ci<strong>icu4j-charset.jar</strong> on your class path along with <strong>icu4j.jar</strong>.
5102e5b6d6dSopenharmony_ci</p>
5112e5b6d6dSopenharmony_ci<p>
5122e5b6d6dSopenharmony_ciTo build ICU4J, you will need JDK 7 or later (JDK 8 is the reference environment for this release)
5132e5b6d6dSopenharmony_ciand the Apache Ant version 1.9 or later. It's recommended to install both the JDK and Ant 
5142e5b6d6dSopenharmony_cisomewhere <em>outside</em>the ICU4J directory. For example, on Linux you might install
5152e5b6d6dSopenharmony_cithese in <code>/usr/local</code>.</p>
5162e5b6d6dSopenharmony_ci<ul>
5172e5b6d6dSopenharmony_ci  <li>Install JDK 8.</li>
5182e5b6d6dSopenharmony_ci  <li>Install the <a href="http://ant.apache.org/"><strong>Apache Ant</strong></a>
5192e5b6d6dSopenharmony_ci      1.9 or later.
5202e5b6d6dSopenharmony_ci  <li>Set environment variables JAVA_HOME, ANT_HOME and PATH, for example:
5212e5b6d6dSopenharmony_ci    <pre>
5222e5b6d6dSopenharmony_ci        set JAVA_HOME=C:\jdk1.8.0
5232e5b6d6dSopenharmony_ci        set ANT_HOME=C:\apache-ant
5242e5b6d6dSopenharmony_ci        set PATH=%JAVA_HOME%\bin;%ANT_HOME%\bin;%PATH%</pre>
5252e5b6d6dSopenharmony_ci    </pre>
5262e5b6d6dSopenharmony_ci  </li>
5272e5b6d6dSopenharmony_ci</ul>
5282e5b6d6dSopenharmony_ci<p>Once the JDK and Ant are configured, run the desired target defined in
5292e5b6d6dSopenharmony_ci<strong>build.xml</strong>. The default target is "jar" which compiles ICU4J library
5302e5b6d6dSopenharmony_ciclass files and create ICU4J jar files. For example:</p>
5312e5b6d6dSopenharmony_ci<blockquote>
5322e5b6d6dSopenharmony_ci<pre>C:\icu4j>ant
5332e5b6d6dSopenharmony_ciBuildfile: C:\icu4j\build.xml
5342e5b6d6dSopenharmony_ci
5352e5b6d6dSopenharmony_ciinfo:
5362e5b6d6dSopenharmony_ci     [echo] ----- Build Environment Information -------------------
5372e5b6d6dSopenharmony_ci     [echo] Java Home:    C:\jdk1.8.0\jre
5382e5b6d6dSopenharmony_ci     [echo] Java Version: 1.8.0_181
5392e5b6d6dSopenharmony_ci     [echo] Ant Home:     C:\apache-ant
5402e5b6d6dSopenharmony_ci     [echo] Ant Version:  Apache Ant(TM) version 1.10.1 compiled on February 2 2017
5412e5b6d6dSopenharmony_ci     [echo] OS:           Windows 10
5422e5b6d6dSopenharmony_ci     [echo] OS Version:   10.0
5432e5b6d6dSopenharmony_ci     [echo] OS Arch:      amd64
5442e5b6d6dSopenharmony_ci     [echo] Host:         ICUDEV
5452e5b6d6dSopenharmony_ci     [echo] -------------------------------------------------------
5462e5b6d6dSopenharmony_ci
5472e5b6d6dSopenharmony_cicore:
5482e5b6d6dSopenharmony_ci
5492e5b6d6dSopenharmony_ci@compile:
5502e5b6d6dSopenharmony_ci     [echo] build-local:     ../../shared/../../build-local.properties
5512e5b6d6dSopenharmony_ci     [echo] --- java compiler arguments ------------------------
5522e5b6d6dSopenharmony_ci     [echo] source dir:     C:\icu4j\main\classes\core/src
5532e5b6d6dSopenharmony_ci     [echo] output dir:     C:\icu4j\main\classes\core/out/bin
5542e5b6d6dSopenharmony_ci     [echo] bootclasspath:
5552e5b6d6dSopenharmony_ci     [echo] classpath:
5562e5b6d6dSopenharmony_ci     [echo] source:         1.7
5572e5b6d6dSopenharmony_ci     [echo] target:         1.7
5582e5b6d6dSopenharmony_ci     [echo] debug:          on
5592e5b6d6dSopenharmony_ci     [echo] encoding:       UTF-8
5602e5b6d6dSopenharmony_ci     [echo] compiler arg:   -Xlint:all,-deprecation,-dep-ann,-options,-overrides
5612e5b6d6dSopenharmony_ci     [echo] ----------------------------------------------------
5622e5b6d6dSopenharmony_ci    [mkdir] Created dir: C:\icu4j\main\classes\core\out\bin
5632e5b6d6dSopenharmony_ci    [javac] Compiling 470 source files to C:\icu4j\main\classes\core\out\bin
5642e5b6d6dSopenharmony_ci    [javac] Note: Some input files use or override a deprecated API.
5652e5b6d6dSopenharmony_ci    [javac] Note: Recompile with -Xlint:deprecation for details.
5662e5b6d6dSopenharmony_ci
5672e5b6d6dSopenharmony_cicompile:
5682e5b6d6dSopenharmony_ci
5692e5b6d6dSopenharmony_ci@copy:
5702e5b6d6dSopenharmony_ci     [copy] Copying 24 files to C:\icu4j\main\classes\core\out\bin
5712e5b6d6dSopenharmony_ci
5722e5b6d6dSopenharmony_ciset-icuconfig-datapath:
5732e5b6d6dSopenharmony_ci
5742e5b6d6dSopenharmony_cicopy-data:
5752e5b6d6dSopenharmony_ci    [unjar] Expanding: C:\icu4j\main\shared\data\icudata.jar into C:\icu4j\main\
5762e5b6d6dSopenharmony_ciclasses\core\out\bin
5772e5b6d6dSopenharmony_ci    [unjar] Expanding: C:\icu4j\main\shared\data\icutzdata.jar into C:\icu4j\mai
5782e5b6d6dSopenharmony_cin\classes\core\out\bin
5792e5b6d6dSopenharmony_ci
5802e5b6d6dSopenharmony_ci...
5812e5b6d6dSopenharmony_ci...
5822e5b6d6dSopenharmony_ci...
5832e5b6d6dSopenharmony_ci
5842e5b6d6dSopenharmony_cilocalespi:
5852e5b6d6dSopenharmony_ci
5862e5b6d6dSopenharmony_ci@compile:
5872e5b6d6dSopenharmony_ci     [echo] build-local:     ../../shared/../../build-local.properties
5882e5b6d6dSopenharmony_ci     [echo] --- java compiler arguments ------------------------
5892e5b6d6dSopenharmony_ci     [echo] source dir:     C:\icu4j\main\classes\localespi/src
5902e5b6d6dSopenharmony_ci     [echo] output dir:     C:\icu4j\main\classes\localespi/out/bin
5912e5b6d6dSopenharmony_ci     [echo] bootclasspath:
5922e5b6d6dSopenharmony_ci     [echo] classpath:      C:\icu4j\main\classes\core\out\lib\icu4j-core.jar;C:
5932e5b6d6dSopenharmony_ci\icu4j\main\classes\collate\out\lib\icu4j-collate.jar
5942e5b6d6dSopenharmony_ci     [echo] source:         1.7
5952e5b6d6dSopenharmony_ci     [echo] target:         1.7
5962e5b6d6dSopenharmony_ci     [echo] debug:          on
5972e5b6d6dSopenharmony_ci     [echo] encoding:       UTF-8
5982e5b6d6dSopenharmony_ci     [echo] compiler arg:   -Xlint:all,-deprecation,-dep-ann,-options
5992e5b6d6dSopenharmony_ci     [echo] ----------------------------------------------------
6002e5b6d6dSopenharmony_ci    [mkdir] Created dir: C:\icu4j\main\classes\localespi\out\bin
6012e5b6d6dSopenharmony_ci    [javac] Compiling 22 source files to C:\icu4j\main\classes\localespi\out\bin
6022e5b6d6dSopenharmony_ci
6032e5b6d6dSopenharmony_ci
6042e5b6d6dSopenharmony_cicompile:
6052e5b6d6dSopenharmony_ci
6062e5b6d6dSopenharmony_ci@copy:
6072e5b6d6dSopenharmony_ci     [copy] Copying 11 files to C:\icu4j\main\classes\localespi\out\bin
6082e5b6d6dSopenharmony_ci
6092e5b6d6dSopenharmony_cicopy:
6102e5b6d6dSopenharmony_ci
6112e5b6d6dSopenharmony_ci@jar:
6122e5b6d6dSopenharmony_ci    [mkdir] Created dir: C:\icu4j\main\classes\localespi\out\lib
6132e5b6d6dSopenharmony_ci     [copy] Copying 1 file to C:\icu4j\main\classes\localespi\out
6142e5b6d6dSopenharmony_ci      [jar] Building jar: C:\icu4j\main\classes\localespi\out\lib\icu4j-localesp
6152e5b6d6dSopenharmony_cii.jar
6162e5b6d6dSopenharmony_ci
6172e5b6d6dSopenharmony_cijar:
6182e5b6d6dSopenharmony_ci
6192e5b6d6dSopenharmony_ci@src-jar:
6202e5b6d6dSopenharmony_ci      [jar] Building jar: C:\icu4j\main\classes\localespi\out\lib\icu4j-localesp
6212e5b6d6dSopenharmony_cii-src.jar
6222e5b6d6dSopenharmony_ci
6232e5b6d6dSopenharmony_cisrc-jar:
6242e5b6d6dSopenharmony_ci
6252e5b6d6dSopenharmony_cibuild:
6262e5b6d6dSopenharmony_ci
6272e5b6d6dSopenharmony_cijar:
6282e5b6d6dSopenharmony_ci     [copy] Copying 1 file to C:\icu4j
6292e5b6d6dSopenharmony_ci     [copy] Copying 1 file to C:\icu4j
6302e5b6d6dSopenharmony_ci
6312e5b6d6dSopenharmony_ciBUILD SUCCESSFUL
6322e5b6d6dSopenharmony_ciTotal time: 30 seconds</pre>
6332e5b6d6dSopenharmony_ci</blockquote>
6342e5b6d6dSopenharmony_ci<I>Note: The above output is an example. The numbers are likely to be different with the current version ICU4J.</I>
6352e5b6d6dSopenharmony_ci<p>The following are some targets that you can provide to <b>ant</b>.
6362e5b6d6dSopenharmony_ciFor more targets run <code>ant -projecthelp</code> or see the build.xml file.</p>
6372e5b6d6dSopenharmony_ci<table border="1">
6382e5b6d6dSopenharmony_ci<tr>
6392e5b6d6dSopenharmony_ci  <th>jar (default)</th>
6402e5b6d6dSopenharmony_ci  <td>Create ICU4J runtime library jar archives (<code>icu4j.jar</code>, 
6412e5b6d6dSopenharmony_ci  <code>icu4j-charset.jar</code> and <code>icu4j-localespi.jar</code>)
6422e5b6d6dSopenharmony_ci  in the root ICU4J directory.</td>
6432e5b6d6dSopenharmony_ci</tr>
6442e5b6d6dSopenharmony_ci<tr>
6452e5b6d6dSopenharmony_ci  <th>check</th>
6462e5b6d6dSopenharmony_ci  <td>Build all ICU4J runtime library classes and corresponding unit test cases,
6472e5b6d6dSopenharmony_ci  then run the tests.</td>
6482e5b6d6dSopenharmony_ci</tr>
6492e5b6d6dSopenharmony_ci<tr>
6502e5b6d6dSopenharmony_ci  <th>clean</th>
6512e5b6d6dSopenharmony_ci  <td>Remove all build output files.</td>
6522e5b6d6dSopenharmony_ci</tr>
6532e5b6d6dSopenharmony_ci<tr>
6542e5b6d6dSopenharmony_ci  <th>main</th>
6552e5b6d6dSopenharmony_ci  <td>Build all ICU4J runtime library sub-components (under the directory
6562e5b6d6dSopenharmony_ci  <code>main/classes</code>).</td>
6572e5b6d6dSopenharmony_ci</tr>
6582e5b6d6dSopenharmony_ci<tr>
6592e5b6d6dSopenharmony_ci  <th>tests</th>
6602e5b6d6dSopenharmony_ci  <td>Build all ICU4J unit test sub-components (under the directory <code>main/tests</code>)
6612e5b6d6dSopenharmony_ci  and their dependencies.</td>
6622e5b6d6dSopenharmony_ci</tr>
6632e5b6d6dSopenharmony_ci<tr>
6642e5b6d6dSopenharmony_ci  <th>tools</th>
6652e5b6d6dSopenharmony_ci  <td>Build the tools.</td>
6662e5b6d6dSopenharmony_ci</tr>
6672e5b6d6dSopenharmony_ci<tr>
6682e5b6d6dSopenharmony_ci  <th>docs</th>
6692e5b6d6dSopenharmony_ci  <td>Run javadoc over the ICU4J runtime library files, generating an HTML documentation
6702e5b6d6dSopenharmony_ci  tree in the subdirectory <code>doc</code>.</td>
6712e5b6d6dSopenharmony_ci</tr>
6722e5b6d6dSopenharmony_ci<tr>
6732e5b6d6dSopenharmony_ci  <th>jarDocs</th>
6742e5b6d6dSopenharmony_ci  <td>Create ICU4J doc jar archive (<code>icu4jdocs.jar</code>) containing API reference
6752e5b6d6dSopenharmony_ci  docs in the root ICU4J directory. </td>
6762e5b6d6dSopenharmony_ci</tr>
6772e5b6d6dSopenharmony_ci<tr>
6782e5b6d6dSopenharmony_ci  <th>jarDemos</th>
6792e5b6d6dSopenharmony_ci  <td>Create ICU4J demo jar archive (<code>icu4jdemos.jar</code>) in the root ICU4J
6802e5b6d6dSopenharmony_ci  directory.</td>
6812e5b6d6dSopenharmony_ci</tr>
6822e5b6d6dSopenharmony_ci</table>
6832e5b6d6dSopenharmony_ci
6842e5b6d6dSopenharmony_ci<p>For more information, read the Ant documentation and the <strong>build.xml</strong>
6852e5b6d6dSopenharmony_cifile.</p>
6862e5b6d6dSopenharmony_ci<p><b>Note:</b> If you get an OutOfMemoryError when you are running <tt>"ant check"</tt>,
6872e5b6d6dSopenharmony_ciyou can set the heap size of the jvm by setting the environment variable JVM_OPTIONS
6882e5b6d6dSopenharmony_cito the appropriate java options.</p>
6892e5b6d6dSopenharmony_ci
6902e5b6d6dSopenharmony_ci<p><b>Eclipse users:</b> See the ICU4J site for information on<a
6912e5b6d6dSopenharmony_ci href="http://site.icu-project.org/setup/eclipse">
6922e5b6d6dSopenharmony_cihow to configure Eclipse</a> to build and develop ICU4J on Eclipse IDE.</p>
6932e5b6d6dSopenharmony_ci
6942e5b6d6dSopenharmony_ci<p><b>Note:</b> To install and configure ICU4J Locale Service Provider, please refer the user guide
6952e5b6d6dSopenharmony_cipage <a href="http://userguide.icu-project.org/icu4j-locale-service-provider">ICU4J Locale
6962e5b6d6dSopenharmony_ciService Provider</a>.</p>
6972e5b6d6dSopenharmony_ci
6982e5b6d6dSopenharmony_ci<h2 class="doc"><a name="tryingout"></a>Trying Out ICU4J</h2>
6992e5b6d6dSopenharmony_ci<p><strong>Note:</strong> the demos provided with ICU4J are for the
7002e5b6d6dSopenharmony_cimost part undocumented. This list can show you where to look, but
7012e5b6d6dSopenharmony_ciyou'll have to experiment a bit. The demos are <strong>unsupported</strong>
7022e5b6d6dSopenharmony_ciand may change or disappear without notice.</p>
7032e5b6d6dSopenharmony_ci<p>The icu4j.jar file contains only the ICU4J runtime library classes, not the
7042e5b6d6dSopenharmony_cidemo classes, so unless you build ICU4J there is little to try out.
7052e5b6d6dSopenharmony_ci</p>
7062e5b6d6dSopenharmony_ci<h3 class="doc">Charset</h3>
7072e5b6d6dSopenharmony_ciTo try out the <strong>Charset</strong> package, build <strong>icu4j.jar</strong> and
7082e5b6d6dSopenharmony_ci<strong>icu4j-charset.jar</strong> using the 'jar' target.
7092e5b6d6dSopenharmony_ciYou can use the charsets by placing these files on your classpath.
7102e5b6d6dSopenharmony_ci<blockquote><tt>java -cp $icu4j_root/icu4j.jar:$icu4j_root/icu4j-charset.jar &lt;your program&gt;</tt></blockquote>
7112e5b6d6dSopenharmony_ci<h3 class="doc">Other demos</h3>
7122e5b6d6dSopenharmony_ci<p>The other demo programs are <strong>not supported</strong> and
7132e5b6d6dSopenharmony_ciexist only to let you experiment with the ICU4J classes. First, build ICU4J using <tt>ant&nbsp;jarDemos</tt>.
7142e5b6d6dSopenharmony_ciThen launch the demos as below:</p>
7152e5b6d6dSopenharmony_ci<blockquote><tt>java -jar $icu4j_root/icu4jdemos.jar</tt></blockquote>
7162e5b6d6dSopenharmony_ci
7172e5b6d6dSopenharmony_ci<h2 class="doc"><a name="resources">ICU4J Resource Information</a></h2>
7182e5b6d6dSopenharmony_ciStarting with release 2.1, ICU4J includes its own
7192e5b6d6dSopenharmony_ciresource information
7202e5b6d6dSopenharmony_ciwhich is completely independent of the JRE resource information. (Note,
7212e5b6d6dSopenharmony_ciICU4J 2.8 to 3.4, time zone information depends on the underlying JRE).
7222e5b6d6dSopenharmony_ciThe ICU4J resource information is equivalent to the information in ICU4C and
7232e5b6d6dSopenharmony_cimany resources are, in fact, the same binary files that ICU4C uses.
7242e5b6d6dSopenharmony_ci<p>
7252e5b6d6dSopenharmony_ciBy default the ICU4J distribution includes all of the standard resource
7262e5b6d6dSopenharmony_ciinformation. It is located under the directory com/ibm/icu/impl/data.
7272e5b6d6dSopenharmony_ciDepending on the service, the data is in different locations and in
7282e5b6d6dSopenharmony_cidifferent formats. <strong>Note:</strong> This will continue to change
7292e5b6d6dSopenharmony_cifrom release to release, so clients should not depend on the exact
7302e5b6d6dSopenharmony_ciorganization
7312e5b6d6dSopenharmony_ciof the data in ICU4J.</p>
7322e5b6d6dSopenharmony_ci<ul>
7332e5b6d6dSopenharmony_ci  <li>The primary <b>locale data</b> is under the directory <tt>icudt67b</tt>,
7342e5b6d6dSopenharmony_ci  as a set of <tt>".res"</tt> files whose names are the locale identifiers. 
7352e5b6d6dSopenharmony_ci  Locale naming is documented the <code>com.ibm.icu.util.ULocale</code>
7362e5b6d6dSopenharmony_ci  class, and the use of these names in searching for resources is documented 
7372e5b6d6dSopenharmony_ci  in <code>com.ibm.icu.util.UResourceBundle</code>.</li>
7382e5b6d6dSopenharmony_ci
7392e5b6d6dSopenharmony_ci  <li>The <b>break iterator data</b> is under the directory <tt>icudt67b/brkitr</tt>,
7402e5b6d6dSopenharmony_ci  as a set of <tt>".res"</tt>, <tt>".brk"</tt> and <tt>".dict"</tt> files.</li>
7412e5b6d6dSopenharmony_ci
7422e5b6d6dSopenharmony_ci  <li>The <b>collation data</b> is under the directory <tt>icudt67b/coll</tt>,
7432e5b6d6dSopenharmony_ci  as a set of <tt>".res"</tt> files.</li>
7442e5b6d6dSopenharmony_ci
7452e5b6d6dSopenharmony_ci  <li>The <b>currency display name data</b> is under the directory <tt>icudt67b/curr</tt>,
7462e5b6d6dSopenharmony_ci  as a set of <tt>".res"</tt> files.</li>
7472e5b6d6dSopenharmony_ci
7482e5b6d6dSopenharmony_ci  <li>The <b>language display name data</b> is under the directory <tt>icudt67b/lang</tt>,
7492e5b6d6dSopenharmony_ci  as a set of <tt>".res"</tt> files.</li>
7502e5b6d6dSopenharmony_ci
7512e5b6d6dSopenharmony_ci  <li>The <b>rule-based number format data</b> is under the directory
7522e5b6d6dSopenharmony_ci  <tt>icudt67b/rbnf</tt>, as a set of <tt>".res"</tt> files.
7532e5b6d6dSopenharmony_ci
7542e5b6d6dSopenharmony_ci  <li>The <b>region display name data</b> is under the directory <tt>icudt67b/region</tt>,
7552e5b6d6dSopenharmony_ci  as a set of <tt>".res"</tt> files.</li>
7562e5b6d6dSopenharmony_ci
7572e5b6d6dSopenharmony_ci  <li>The <b>rule-based transliterator data</b> is under the directory
7582e5b6d6dSopenharmony_ci  <tt>icudt67b/translit</tt>, as a set of <tt>".res"</tt> files.</li>
7592e5b6d6dSopenharmony_ci
7602e5b6d6dSopenharmony_ci  <li>The <b>measurement unit data</b> is under the directory <tt>icudt67b/unit</tt>,
7612e5b6d6dSopenharmony_ci  as a set of <tt>".res"</tt> files.</li>
7622e5b6d6dSopenharmony_ci
7632e5b6d6dSopenharmony_ci  <li>The <b>time zone display name data</b> is under the directory
7642e5b6d6dSopenharmony_ci  <tt>icudt67b/zone</tt>, as a set of <tt>".res"</tt> files.</li>
7652e5b6d6dSopenharmony_ci
7662e5b6d6dSopenharmony_ci  <li>The <b>character property data</b> and default <b>unicode collation algorithm
7672e5b6d6dSopenharmony_ci  (UCA) data</b> is found under the directory <tt>icudt67b</tt>, as a set of
7682e5b6d6dSopenharmony_ci  <tt>".icu"</tt> files. </li>
7692e5b6d6dSopenharmony_ci
7702e5b6d6dSopenharmony_ci  <li>The <b>normalization data</b> is found under the directory <tt>icudt67b</tt>,
7712e5b6d6dSopenharmony_ci  as a set of <tt>".nrm"</tt> files. </li>
7722e5b6d6dSopenharmony_ci
7732e5b6d6dSopenharmony_ci  <li>The <b>character set converter data</b> is under the directory
7742e5b6d6dSopenharmony_ci  <tt>icudt67b</tt>, as a set of <tt>".cnv"</tt> files.  These files are
7752e5b6d6dSopenharmony_ci  currently included only in icu-charset.jar.</li>
7762e5b6d6dSopenharmony_ci
7772e5b6d6dSopenharmony_ci  <li>The <b>time zone rule data</b> is under the directory 
7782e5b6d6dSopenharmony_ci  <tt>icudt67b</tt>, as <tt>zoneinfo64.res</tt>.</li>
7792e5b6d6dSopenharmony_ci
7802e5b6d6dSopenharmony_ci  <li>The <b>holiday data</b> is under the directory <tt>icudt67b</tt>,
7812e5b6d6dSopenharmony_ci  as a set of <tt>".class"</tt> files, named <tt>"HolidayBundle_"</tt>
7822e5b6d6dSopenharmony_ci  followed by the locale ID.</li>
7832e5b6d6dSopenharmony_ci
7842e5b6d6dSopenharmony_ci</ul>
7852e5b6d6dSopenharmony_ci<p>
7862e5b6d6dSopenharmony_ciSome of the data files alias or otherwise reference data from other
7872e5b6d6dSopenharmony_cidata files. One reason for this is because some locale names have
7882e5b6d6dSopenharmony_cichanged. For example, <tt>he_IL</tt> used to be <tt>iw_IL</tt>. In
7892e5b6d6dSopenharmony_ciorder to support both names but not duplicate the data, one of the
7902e5b6d6dSopenharmony_ciresource files refers to the other file's data. In other cases, a
7912e5b6d6dSopenharmony_cifile may alias a portion of another file's data in order to save
7922e5b6d6dSopenharmony_cispace. Currently ICU4J provides no tool for revealing these
7932e5b6d6dSopenharmony_cidependencies.</p>
7942e5b6d6dSopenharmony_ci<blockquote><strong>Note:</strong>  Java's <code>Locale</code> class
7952e5b6d6dSopenharmony_cisilently converts the language code <tt>"he"</tt> to <tt>"iw"</tt>
7962e5b6d6dSopenharmony_ciwhen you construct the Locale (for versions of Java through Java 5). Thus
7972e5b6d6dSopenharmony_ciJava cannot be used to locate resources that use the <tt>"he"</tt>
7982e5b6d6dSopenharmony_cilanguage code. ICU, on the other hand, does not perform this
7992e5b6d6dSopenharmony_ciconversion in ULocale, and instead uses aliasing in the locale data to
8002e5b6d6dSopenharmony_cirepresent the same set of data under different locale
8012e5b6d6dSopenharmony_ciids.</blockquote>
8022e5b6d6dSopenharmony_ci<p>
8032e5b6d6dSopenharmony_ciResource files that use locale ids form a hierarchy, with up to four
8042e5b6d6dSopenharmony_cilevels: a root, language, region (country), and variant. Searches for
8052e5b6d6dSopenharmony_cilocale data attempt to match as far down the hierarchy as possible,
8062e5b6d6dSopenharmony_cifor example, <tt>"he_IL"</tt> will match <tt>he_IL</tt>, but
8072e5b6d6dSopenharmony_ci<tt>"he_US"</tt> will match <tt>he</tt> (since there is no <tt>US</tt>
8082e5b6d6dSopenharmony_civariant for he, and <tt>"xx_YY</tt> will match root (the
8092e5b6d6dSopenharmony_cidefault fallback locale) since there is no <tt>xx</tt> language code
8102e5b6d6dSopenharmony_ciin the locale hierarchy. Again, see
8112e5b6d6dSopenharmony_ci<code>java.util.ResourceBundle</code> for more information.
8122e5b6d6dSopenharmony_ci</p>
8132e5b6d6dSopenharmony_ci<p>
8142e5b6d6dSopenharmony_ci<strong>Currently ICU4J provides no tool for revealing these
8152e5b6d6dSopenharmony_cidependencies</strong> between data files, so trimming the data
8162e5b6d6dSopenharmony_cidirectly in the ICU4J project is a hit-or-miss affair. The key point
8172e5b6d6dSopenharmony_ciwhen you remove data is to make sure to remove all dependencies on
8182e5b6d6dSopenharmony_cithat data as well. For example, if you remove <tt>he.res</tt>, you
8192e5b6d6dSopenharmony_cineed to remove <tt>he_IL.res</tt>, since it is lower in the hierarchy,
8202e5b6d6dSopenharmony_ciand you must remove iw.res, since it references <tt>he.res</tt>, and
8212e5b6d6dSopenharmony_ci<tt>iw_IL.res</tt>, since it depends on it (and also references
8222e5b6d6dSopenharmony_ci<tt>he_IL.res</tt>).
8232e5b6d6dSopenharmony_ci</p>
8242e5b6d6dSopenharmony_ci<p>
8252e5b6d6dSopenharmony_ciUnfortunately, the jar tool in the JDK provides no way to remove items
8262e5b6d6dSopenharmony_cifrom a jar file. Thus you have to extract the resources, remove the
8272e5b6d6dSopenharmony_ciones you don't want, and then create a new jar file with the remining
8282e5b6d6dSopenharmony_ciresources. See the jar tool information for how to do this. Before
8292e5b6d6dSopenharmony_ci'rejaring' the files, be sure to thoroughly test your application with
8302e5b6d6dSopenharmony_cithe remaining resources, making sure each required resource is
8312e5b6d6dSopenharmony_cipresent.
8322e5b6d6dSopenharmony_ci</p>
8332e5b6d6dSopenharmony_ci<h3 class="doc">Using additional resource files with ICU4J</h3>
8342e5b6d6dSopenharmony_ci<blockquote>
8352e5b6d6dSopenharmony_ci  <table cellpadding="3" frame="border" rules="none" width="50%">
8362e5b6d6dSopenharmony_ci    <tbody>
8372e5b6d6dSopenharmony_ci      <tr>
8382e5b6d6dSopenharmony_ci        <td><b><font color="red" size="+1">Warning:</font> Resource
8392e5b6d6dSopenharmony_cifile formats can change across releases of ICU4J!</b></td>
8402e5b6d6dSopenharmony_ci      </tr>
8412e5b6d6dSopenharmony_ci      <tr>
8422e5b6d6dSopenharmony_ci        <td>The format of ICU4J resources is not part of the API.
8432e5b6d6dSopenharmony_ciClients who develop their own resources for use with ICU4J should be
8442e5b6d6dSopenharmony_ciprepared to
8452e5b6d6dSopenharmony_ciregenerate them when they move to new releases of ICU4J.</td>
8462e5b6d6dSopenharmony_ci      </tr>
8472e5b6d6dSopenharmony_ci    </tbody>
8482e5b6d6dSopenharmony_ci  </table>
8492e5b6d6dSopenharmony_ci</blockquote>
8502e5b6d6dSopenharmony_ci<p>
8512e5b6d6dSopenharmony_ciWe are still developing ICU4J's resource mechanism. Currently it 
8522e5b6d6dSopenharmony_ciis not possible to mix icu's new binary <tt>.res</tt>
8532e5b6d6dSopenharmony_ciresources
8542e5b6d6dSopenharmony_ciwith traditional java-style <tt>.class</tt> or <tt>.txt</tt>
8552e5b6d6dSopenharmony_ciresources. We might
8562e5b6d6dSopenharmony_ciallow for this in a future release, but since the resource data and
8572e5b6d6dSopenharmony_ciformat is not formally
8582e5b6d6dSopenharmony_cisupported, you run the risk of incompatibilities with future releases
8592e5b6d6dSopenharmony_ciof ICU4J.
8602e5b6d6dSopenharmony_ci</p>
8612e5b6d6dSopenharmony_ci<p>
8622e5b6d6dSopenharmony_ciResource data in ICU4J is checked in to the repository as a jar file
8632e5b6d6dSopenharmony_cicontaining the resource binaries, <tt>$icu4j_root/main/shared/data/icudata.jar</tt>.
8642e5b6d6dSopenharmony_ciThis means that inspecting the contents of these resources is difficult.
8652e5b6d6dSopenharmony_ciThey currently are compiled from ICU4C <tt>.txt</tt> file data. You
8662e5b6d6dSopenharmony_cican view the contents of the ICU4C text resource files to understand
8672e5b6d6dSopenharmony_cithe contents of the ICU4J resources.
8682e5b6d6dSopenharmony_ci</p>
8692e5b6d6dSopenharmony_ci<p>
8702e5b6d6dSopenharmony_ciThe files in <tt>icudata.jar</tt> get extracted to <tt>com/ibm/icu/impl/data</tt>
8712e5b6d6dSopenharmony_ciin the build output directory by some build targets.
8722e5b6d6dSopenharmony_ci</p>
8732e5b6d6dSopenharmony_ci<h3 class="doc"><a name="resourcesICU4C">Building ICU4J Resources from ICU4C</a></h3>
8742e5b6d6dSopenharmony_ciICU4J data is built by ICU4C tools. Please see "icu4j-readme.txt" in icu4c/source/data for the procedures.
8752e5b6d6dSopenharmony_ci<h5> Generating Data from CLDR </h5>
8762e5b6d6dSopenharmony_ci<I> Note: This procedure assumes that all 3 sources are present</I>
8772e5b6d6dSopenharmony_ci<ol>
8782e5b6d6dSopenharmony_ci    <li>Checkout or download CLDR version 'release-37'</li>
8792e5b6d6dSopenharmony_ci    <li>Checkout ICU with tag 'release-67-1'</li>
8802e5b6d6dSopenharmony_ci    <li>cd to icu4c/source/data directory</li>
8812e5b6d6dSopenharmony_ci    <li>Follow the instructions in icu4c/source/data/cldr-icu-readme.txt</li>
8822e5b6d6dSopenharmony_ci    <li>Rebuild ICU4C with the newly generated data.</li>
8832e5b6d6dSopenharmony_ci    <li>Run ICU4C tests to verify that the new data is good.</li>
8842e5b6d6dSopenharmony_ci    <li>Build ICU4J data from ICU4C data by following the procedures in icu4j/source/data/icu4j-readme.txt</li>
8852e5b6d6dSopenharmony_ci    <li>cd to icu4j dir</li>
8862e5b6d6dSopenharmony_ci    <li>Build and test icu4j</li>
8872e5b6d6dSopenharmony_ci</ol>
8882e5b6d6dSopenharmony_ci
8892e5b6d6dSopenharmony_ci<h2 class="doc"><a name="timezone"></a>About ICU4J Time Zone</h2>
8902e5b6d6dSopenharmony_ci<p>ICU4J library includes the latest time zone data, as of the release date.
8912e5b6d6dSopenharmony_ciHowever, time zone data is frequently updated in response
8922e5b6d6dSopenharmony_cito changes made by local governments around the world.  If you need to update
8932e5b6d6dSopenharmony_cithe time zone data, please refer the ICU user guide topic
8942e5b6d6dSopenharmony_ci<a href="http://userguide.icu-project.org/datetime/timezone#TOC-Updating-the-Time-Zone-Data">Updating the Time Zone Data</a>.</p>
8952e5b6d6dSopenharmony_ci<p>You can optionally configure ICU4J date and time
8962e5b6d6dSopenharmony_ciservice classes to use underlying JDK TimeZone implementation (see the ICU4J API reference
8972e5b6d6dSopenharmony_ci<a href="http://www.icu-project.org/apiref/icu4j/com/ibm/icu/util/TimeZone.html">TimeZone</a>
8982e5b6d6dSopenharmony_cifor the details).  When this configuration is enabled, ICU's own time zone data
8992e5b6d6dSopenharmony_ciwon't be used and you have to get time zone data patches from the JRE vendor.</p>
9002e5b6d6dSopenharmony_ci
9012e5b6d6dSopenharmony_ci<h2 class="doc"><a name="WhereToFindMore"></a>Where to Find More
9022e5b6d6dSopenharmony_ciInformation</h2>
9032e5b6d6dSopenharmony_ci<p><a href="http://www.icu-project.org/">http://www.icu-project.org/</a>
9042e5b6d6dSopenharmony_ciis the home page of International Components for Unicode development project</p>
9052e5b6d6dSopenharmony_ci
9062e5b6d6dSopenharmony_ci<h2 class="doc"><a name="SubmittingComments"></a>Submitting Comments,
9072e5b6d6dSopenharmony_ciRequesting Features and
9082e5b6d6dSopenharmony_ciReporting Bugs</h2>
9092e5b6d6dSopenharmony_ci<p>Your comments are important to making ICU4J successful. We are
9102e5b6d6dSopenharmony_cicommitted to investigate any bug reports or suggestions,
9112e5b6d6dSopenharmony_ciand will use your feedback to help plan future releases.</p>
9122e5b6d6dSopenharmony_ci<p>To submit comments, request features and report bugs,
9132e5b6d6dSopenharmony_ciplease see <a href="http://www.icu-project.org/bugs.html">ICU bug database
9142e5b6d6dSopenharmony_ciinformation</a> or contact us through the <a
9152e5b6d6dSopenharmony_ci href="http://www.icu-project.org/contacts.html">ICU Support
9162e5b6d6dSopenharmony_cimailing list</a>.  While we are not able to respond individually to each comment, we do
9172e5b6d6dSopenharmony_cireview all comments.</p>
9182e5b6d6dSopenharmony_ci<br>
9192e5b6d6dSopenharmony_ci<br>
9202e5b6d6dSopenharmony_ci<h2>Thank you for your interest in ICU4J!</h2>
9212e5b6d6dSopenharmony_ci<br>
9222e5b6d6dSopenharmony_ci<hr align="center" size="2" width="100%">
9232e5b6d6dSopenharmony_ci<p><I><font size="-1">© 2016 and later: Unicode, Inc. and others.<br>
9242e5b6d6dSopenharmony_ciLicense & terms of use: <a href="http://www.unicode.org/copyright.html#License">http://www.unicode.org/copyright.html#License</a>
9252e5b6d6dSopenharmony_ci</font></I></p>
9262e5b6d6dSopenharmony_ci</body>
9272e5b6d6dSopenharmony_ci</html>
928