ICU-22324 Mavenization, building the CLDR utilities
diff --git a/.github/workflows/maven.yaml b/.github/workflows/maven.yaml
index 716f3f0..1a26f31 100644
--- a/.github/workflows/maven.yaml
+++ b/.github/workflows/maven.yaml
@@ -7,7 +7,7 @@
     # https://docs.github.com/en/actions/managing-workflow-runs/manually-running-a-workflow
 
 env:
-  MAVEN_ARGS: '--show-version --no-transfer-progress'
+  SHARED_MVN_ARGS: '--show-version --no-transfer-progress'
 
 permissions:
   contents: read
@@ -25,28 +25,22 @@
         with:
           distribution: 'temurin'
           java-version: '11'
-      - name: icu4j ant releaseCLDR
-        run: ant -noinput releaseCLDR -f icu4j/build.xml
+      - name: icu4j and releaseCLDR
+        run: |
+          cd icu4j
+          mvn ${SHARED_MVN_ARGS} clean install -DskipTests -DskipIT -P with_sources
       - name: deploy it
         run: |
-          MYVERSION=$(sed -n -e 's%^\s*maven.pom.ver[ =]*%%p' < icu4j/build.properties)-$(echo ${GITHUB_REF} | cut -d/ -f3- | tr ./ _-)
-          echo Github Ref ${GITHUB_REF} @ ${GITHUB_SHA}, version ${MYVERSION}
-          mvn deploy:deploy-file -DgroupId=com.ibm.icu \
-            -DartifactId=icu4j-for-cldr \
-            -Dversion=${MYVERSION} \
-            -Dpackaging=jar \
-            -Dfile=icu4j/release_cldr/icu4j.jar \
-            -Dsources=icu4j/release_cldr/icu4j-src.jar \
-            -DrepositoryId=github \
-            -Durl=https://maven.pkg.github.com/${GITHUB_REPOSITORY}
-          mvn deploy:deploy-file -DgroupId=com.ibm.icu \
-            -DartifactId=utilities-for-cldr \
-            -Dversion=${MYVERSION} \
-            -Dpackaging=jar \
-            -Dfile=icu4j/release_cldr/utilities.jar \
-            -Dsources=icu4j/release_cldr/utilities-src.jar \
-            -DrepositoryId=github \
-            -Durl=https://maven.pkg.github.com/${GITHUB_REPOSITORY}
+          echo Github Ref ${GITHUB_REF} @ ${GITHUB_SHA};
+          cd icu4j
+          mvn deploy ${SHARED_MVN_ARGS} \
+            -pl main/icu4j \
+            -DaltDeploymentRepository=github::https://maven.pkg.github.com/${GITHUB_REPOSITORY} \
+            -P with_sources
+          mvn deploy ${SHARED_MVN_ARGS} \
+            -pl tools/utilities-for-cldr \
+            -DaltDeploymentRepository=github::https://maven.pkg.github.com/${GITHUB_REPOSITORY} \
+            -P cldr_tools,with_sources
         env:
           GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
 # Note: can use 0.0.0-${GITHUB_SHA} as the version for hash-based.
diff --git a/icu4j/perf-tests/src/main/java/com/ibm/icu/dev/test/perf/PerfTest.java b/icu4j/perf-tests/src/main/java/com/ibm/icu/dev/test/perf/PerfTest.java
index 3bff196..9e9cef9 100644
--- a/icu4j/perf-tests/src/main/java/com/ibm/icu/dev/test/perf/PerfTest.java
+++ b/icu4j/perf-tests/src/main/java/com/ibm/icu/dev/test/perf/PerfTest.java
@@ -25,7 +25,7 @@
 import java.util.Map;
 import java.util.Set;
 
-import com.ibm.icu.dev.tool.UOption;
+import com.ibm.icu.dev.tool.shared.UOption;
 import com.ibm.icu.impl.LocaleUtility;
 
 /**
diff --git a/icu4j/pom.xml b/icu4j/pom.xml
index b37c923..6d3c016 100644
--- a/icu4j/pom.xml
+++ b/icu4j/pom.xml
@@ -27,6 +27,7 @@
     <module>demos</module>
     <module>samples</module>
     <module>tools/misc</module>
+    <module>tools/utilities-for-cldr</module>
     <module>perf-tests</module>
   </modules>
 
@@ -259,6 +260,11 @@
           <version>3.6.0</version>
         </plugin>
         <plugin>
+          <groupId>org.codehaus.mojo</groupId>
+          <artifactId>build-helper-maven-plugin</artifactId>
+          <version>3.4.0</version>
+        </plugin>
+        <plugin>
           <artifactId>maven-release-plugin</artifactId>
           <version>3.0.1</version>
         </plugin>
diff --git a/icu4j/tools/misc/src/main/java/com/ibm/icu/dev/tool/localeconverter/XLIFF2ICUConverter.java b/icu4j/tools/misc/src/main/java/com/ibm/icu/dev/tool/localeconverter/XLIFF2ICUConverter.java
index 8a5ef0c..093069a 100644
--- a/icu4j/tools/misc/src/main/java/com/ibm/icu/dev/tool/localeconverter/XLIFF2ICUConverter.java
+++ b/icu4j/tools/misc/src/main/java/com/ibm/icu/dev/tool/localeconverter/XLIFF2ICUConverter.java
@@ -32,7 +32,7 @@
 import org.xml.sax.SAXException;
 import org.xml.sax.SAXParseException;
 
-import com.ibm.icu.dev.tool.UOption;
+import com.ibm.icu.dev.tool.shared.UOption;
 
 public final class XLIFF2ICUConverter {
     
diff --git a/icu4j/tools/misc/src/main/java/com/ibm/icu/dev/tool/UOption.java b/icu4j/tools/misc/src/main/java/com/ibm/icu/dev/tool/shared/UOption.java
similarity index 99%
rename from icu4j/tools/misc/src/main/java/com/ibm/icu/dev/tool/UOption.java
rename to icu4j/tools/misc/src/main/java/com/ibm/icu/dev/tool/shared/UOption.java
index 8844ab3..df10d0b 100644
--- a/icu4j/tools/misc/src/main/java/com/ibm/icu/dev/tool/UOption.java
+++ b/icu4j/tools/misc/src/main/java/com/ibm/icu/dev/tool/shared/UOption.java
@@ -10,7 +10,7 @@
 * Since: ICU 2.4
 **********************************************************************
 */
-package com.ibm.icu.dev.tool;
+package com.ibm.icu.dev.tool.shared;
 
 /**
  * A command-line option.  A UOption specifies the name of an option
diff --git a/icu4j/tools/utilities-for-cldr/pom.xml b/icu4j/tools/utilities-for-cldr/pom.xml
new file mode 100644
index 0000000..b0eaa49
--- /dev/null
+++ b/icu4j/tools/utilities-for-cldr/pom.xml
@@ -0,0 +1,76 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+* © 2023 and later: Unicode, Inc. and others.
+* License & terms of use: http://www.unicode.org/copyright.html
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  <parent>
+    <groupId>com.ibm.icu</groupId>
+    <artifactId>icu4j-root</artifactId>
+    <version>74.1-SNAPSHOT</version>
+    <relativePath>../../pom.xml</relativePath>
+  </parent>
+
+  <artifactId>utilities-for-cldr</artifactId>
+  <packaging>jar</packaging>
+
+  <properties>
+    <proj.displayname>Utilities</proj.displayname>
+    <mf.Automatic-Module-Name>com.ibm.icu.utilities</mf.Automatic-Module-Name>
+  </properties>
+
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.codehaus.mojo</groupId>
+        <artifactId>build-helper-maven-plugin</artifactId>
+        <executions>
+           <execution>
+               <id>add-source</id>
+               <phase>generate-sources</phase>
+               <goals>
+                  <goal>add-source</goal>
+               </goals>
+               <configuration>
+                  <sources>
+                    <source>../misc/src/main/java/com/ibm/icu/dev/tool/shared</source>
+                    <source>../../main/framework/src/test/java/com/ibm/icu/dev/util</source>
+                    <source>../../main/translit/src/test/java/com/ibm/icu/dev/util</source>
+                  </sources>
+               </configuration>
+           </execution>
+         </executions>
+        </plugin>
+    </plugins>
+  </build>
+
+  <dependencies>
+    <dependency>
+      <groupId>com.ibm.icu</groupId>
+      <artifactId>translit</artifactId>
+      <version>${project.version}</version>
+    </dependency>
+  </dependencies>
+
+  <profiles>
+    <profile>
+      <id>cldr_tools</id>
+      <build>
+        <plugins>
+          <plugin>
+            <!-- Only deploy when the `cldr_tools` profile is active,
+              otherwise it will also be deployed to Maven Central.
+              We can also try to specify `altDeploymentRepository` here.
+            -->
+            <artifactId>maven-deploy-plugin</artifactId>
+            <configuration>
+              <skip>false</skip>
+            </configuration>
+          </plugin>
+        </plugins>
+      </build>
+    </profile>
+  </profiles>
+
+</project>