diff --git a/recipes-openharmony/openharmony/openharmony-standard-3.0/build_packing-tool-path.patch b/recipes-openharmony/openharmony/openharmony-standard-3.0/build_packing-tool-path.patch
new file mode 100644
index 0000000000000000000000000000000000000000..074558445a308bcc84c3fe13e78c2ea927bf58ca
--- /dev/null
+++ b/recipes-openharmony/openharmony/openharmony-standard-3.0/build_packing-tool-path.patch
@@ -0,0 +1,28 @@
+# SPDX-FileCopyrightText: Huawei Inc.
+#
+# SPDX-License-Identifier: Apache-2.0
+
+Patch for //build git repository of OpenHarmony 3.1 codebase.
+
+This modifies the path to the OpenHarmony packing tool jar files so
+rebase_path() points to the bitbake brewed ones in the native sysroot.
+
+Signed-off-by: Thierry Escande <thierry.escande@huawei.com>
+Signed-off-by: Robert Drab <robert.drab@huawei.com>
+Upstream-Status: Inappropriate
+
+diff --git a/ohos_var.gni b/ohos_var.gni
+index 4930fd4..e267c1e 100755
+--- a/ohos_var.gni
++++ b/ohos_var.gni
+@@ -185,8 +185,8 @@ app_target_types = [
+ restool = "//prebuilts/build-tools/common/restool/restool"
+ hapsigner = "//prebuilts/signcenter/hapsigntool/hapsigntoolv2.jar"
+ hap_unpacking_tool =
+-    "//developtools/packing_tool/jar/hmos_app_unpacking_tool.jar"
+-hap_packing_tool = "//developtools/packing_tool/jar/hmos_app_packing_tool.jar"
++    "//../recipe-sysroot-native/usr/lib/app_unpacking_tool.jar"
++hap_packing_tool = "//../recipe-sysroot-native/usr/lib/app_packing_tool.jar"
+ ace_loader_home = "//prebuilts/sdk/js-loader/build-tools/ace-loader"
+ nodejs_version = "v12.18.4"
+ nodejs = "//prebuilts/build-tools/common/nodejs/node-${nodejs_version}-${host_os}-x64/bin/node"
diff --git a/recipes-openharmony/openharmony/openharmony-standard_3.0.bb b/recipes-openharmony/openharmony/openharmony-standard_3.0.bb
index b83f745e13841ad50b977e8fd89c7c451b2303f9..f08cc3bcad44da0c4877ee513fc2073484f87607 100644
--- a/recipes-openharmony/openharmony/openharmony-standard_3.0.bb
+++ b/recipes-openharmony/openharmony/openharmony-standard_3.0.bb
@@ -17,10 +17,12 @@ require sanity-check.inc
 DEPENDS += "nodejs-native"
 DEPENDS += "bison-native"
 DEPENDS += "ruby-native"
+DEPENDS += "packing-tool-native"
 
 # Note: Using include instead of require to avoid parser error skipping recipe
 include ${PN}-sources-${OPENHARMONY_VERSION}.inc
 
+require java-tools.inc
 require musl-ldso-paths-sanity-check.inc
 
 FILESEXTRAPATHS:prepend := "${THISDIR}/openharmony-${OPENHARMONY_VERSION}:"
@@ -39,6 +41,7 @@ SRC_URI += "file://jsframwork-use-yocto-node.patch;patchdir=${S}/third_party/jsf
 SRC_URI += "file://ts2abc-don-t-set-node_path-for-Linux-host-toolchain.patch;patchdir=${S}/ark/ts2abc"
 
 SRC_URI += "file://hdc-build-system-files.patch;patchdir=${S}/developtools/hdc_standard"
+SRC_URI += "file://build_packing-tool-path.patch;patchdir=${S}/build"
 
 SRC_URI += "file://vendor-qemu-uhdf-files.patch;patchdir=${S}/drivers/peripheral"
 SRC_URI += "git://gitlab.eclipse.org/eclipse/oniro-core/openharmony-vendor-oniro.git;protocol=https;branch=main;rev=c7f69115d7af1a37f81bd4fc0462100d0aa87c2d;destsuffix=${S}/vendor/oniro"