Updates to fix issues with the Heron API dependencies (#3844)

diff --git a/WORKSPACE b/WORKSPACE
index fe7b4c5..ec7c592 100644
--- a/WORKSPACE
+++ b/WORKSPACE
@@ -124,6 +124,7 @@
         "tech.tablesaw:tablesaw-core:0.11.4",
         "org.glassfish.hk2.external:aopalliance-repackaged:2.5.0-b32",
         "org.apache.commons:commons-compress:1.14",
+        "org.apache.commons:commons-lang3:3.12.0",
         "commons-io:commons-io:2.4",
         "commons-collections:commons-collections:3.2.1",
         "commons-cli:commons-cli:1.3.1",
diff --git a/heron/api/src/java/shade.conf b/heron/api/src/java/shade.conf
index ebf9607..f95810a 100644
--- a/heron/api/src/java/shade.conf
+++ b/heron/api/src/java/shade.conf
@@ -15,7 +15,7 @@
 #  specific language governing permissions and limitations
 #  under the License.
 
-rule com.google.protobuf** org.apache.heron.shaded.@0
-rule org.slf4j** org.apache.heron.shaded.@0
-rule javax.xml.bind** org.apache.heron.shaded.@0
-rule org.apache.commons** org.apache.heron.shaded.@0
+zap com.google.protobuf**
+zap org.slf4j**
+zap javax.xml.bind**
+zap org.apache.commons.lang3**
diff --git a/maven_install.json b/maven_install.json
index ebe4f52..fc7a607 100644
--- a/maven_install.json
+++ b/maven_install.json
@@ -1,7 +1,7 @@
 {
     "dependency_tree": {
         "__AUTOGENERATED_FILE_DO_NOT_MODIFY_THIS_FILE_MANUALLY": "THERE_IS_NO_DATA_ONLY_ZUUL",
-        "__INPUT_ARTIFACTS_HASH": 389120310,
+        "__INPUT_ARTIFACTS_HASH": 1411695818,
         "__RESOLVED_ARTIFACTS_HASH": 1590208671,
         "conflict_resolution": {},
         "dependencies": [
diff --git a/release/maven/maven-pom-version.sh b/release/maven/maven-pom-version.sh
index 9258046..21cb43f 100755
--- a/release/maven/maven-pom-version.sh
+++ b/release/maven/maven-pom-version.sh
@@ -34,9 +34,19 @@
                             <version>3.12.0</version>\
                         </dependency>\
                         <dependency>\
-                            <groupId>org.glassfish.jersey.media</groupId>\
-                             <artifactId>jersey-media-jaxb</artifactId>\
-                              <version>2.25.1</version>\
+                          <groupId>com.google.protobuf</groupId>\
+                            <artifactId>protobuf-java</artifactId>\
+                            <version>3.16.1</version>\
+                        </dependency>\
+                        <dependency>\
+                          <groupId>javax.xml.bind</groupId>\
+                            <artifactId>jaxb-api</artifactId>\
+                            <version>2.3.0</version>\
+                        </dependency>\
+                        <dependency>\
+                          <groupId>org.slf4j</groupId>\
+                            <artifactId>jul-to-slf4j</artifactId>\
+                            <version>1.7.36</version>\
                         </dependency>", $0); print}' | \
     xmllint --format - \
     >> ./heron-api-$1.pom
diff --git a/scripts/ci/build_maven_artifacts.sh b/scripts/ci/build_maven_artifacts.sh
old mode 100644
new mode 100755
index 6b89ba6..f9fda6f
--- a/scripts/ci/build_maven_artifacts.sh
+++ b/scripts/ci/build_maven_artifacts.sh
@@ -69,7 +69,7 @@
 
 echo "Copy heron-api artifacts ... "
 cp -p -f ./release/heron-api-$VERSION_TAG.pom $OUTPUT_DIR/$VERSION_TAG/heron-api/
-cp -p -f ./bazel-bin/heron/api/src/java/api-java-low-level-functional.jar $OUTPUT_DIR/$VERSION_TAG/heron-api/heron-api-$VERSION_TAG.jar
+cp -p -f ./bazel-bin/heron/api/src/java/api-shaded.jar $OUTPUT_DIR/$VERSION_TAG/heron-api/heron-api-$VERSION_TAG.jar
 cp -p -f ./bazel-bin/heron/api/src/java/heron-api-javadoc.zip $OUTPUT_DIR/$VERSION_TAG/heron-api/heron-api-$VERSION_TAG-javadoc.jar
 cp -p -f ./bazel-bin/heron/api/src/java/libapi-java-low-level-functional-src.jar $OUTPUT_DIR/$VERSION_TAG/heron-api/heron-api-$VERSION_TAG-sources.jar
 
diff --git a/tools/rules/heron_deps.bzl b/tools/rules/heron_deps.bzl
index c51942c..63b1524 100644
--- a/tools/rules/heron_deps.bzl
+++ b/tools/rules/heron_deps.bzl
@@ -31,11 +31,11 @@
         "//heron/proto:proto_topology_java",
         "//heron/proto:proto_tuple_java",
         "//heron/proto:proto_stmgr_java",
-        "@com_google_protobuf//:protobuf_java",
+        "@maven//:com_google_protobuf_protobuf_java",
     ]
 
 def heron_java_api_proto_files():
     return [
         "//heron/proto:proto_topology_java",
-        "@com_google_protobuf//:protobuf_java",
+        "@maven//:com_google_protobuf_protobuf_java",
     ]