diff --git a/classes/bazel-base.bbclass b/classes/bazel-base.bbclass
index 4741f4e..6a5c7a5 100644
--- a/classes/bazel-base.bbclass
+++ b/classes/bazel-base.bbclass
@@ -1,4 +1,4 @@
-export JAVA_HOME = "${STAGING_LIBDIR_NATIVE}/jvm/openjdk-11-native"
+export JAVA_HOME = "${STAGING_LIBDIR_NATIVE}/jvm/openjdk-21-native"
 
 # %25 of total number of local CPU cores
 BAZEL_JOBS ??= "HOST_CPUS*.25"
diff --git a/classes/bazel.bbclass b/classes/bazel.bbclass
index 556739f..3d5e7b3 100644
--- a/classes/bazel.bbclass
+++ b/classes/bazel.bbclass
@@ -1,5 +1,5 @@
 DEPENDS += "bazel-native \
-           openjdk-11-native \
+           openjdk-21-native \
           "
 DEPENDS:append:class-target = " python3"
 
diff --git a/recipes-devtools/bazel/bazel-native_7.7.0.bb b/recipes-devtools/bazel/bazel-native_7.7.0.bb
index a02844d..400e169 100644
--- a/recipes-devtools/bazel/bazel-native_7.7.0.bb
+++ b/recipes-devtools/bazel/bazel-native_7.7.0.bb
@@ -22,7 +22,7 @@ CCACHE_DISABLE = "1"
 
 DEPENDS = "coreutils-native \
            zip-native \
-           openjdk-11-native \
+           openjdk-21-native \
           "
 
 S = "${UNPACKDIR}"
diff --git a/recipes-devtools/openjdk/openjdk-11-native_11.0.15.bb b/recipes-devtools/openjdk/openjdk-21-native_21.0.2.bb
similarity index 59%
rename from recipes-devtools/openjdk/openjdk-11-native_11.0.15.bb
rename to recipes-devtools/openjdk/openjdk-21-native_21.0.2.bb
index cec79b2..9b4949e 100644
--- a/recipes-devtools/openjdk/openjdk-11-native_11.0.15.bb
+++ b/recipes-devtools/openjdk/openjdk-21-native_21.0.2.bb
@@ -3,21 +3,20 @@ builds using source code from OpenJDK project"
 LICENSE = "GPL-2.0-with-classpath-exception"
 LIC_FILES_CHKSUM = "file://legal/java.base/LICENSE;md5=3e0b59f8fac05c3c03d4a26bbda13f8f"
 
-SRC_URI[md5sum] = "7a1d931c0454981d85ed0d2949a91b7f"
-SRC_URI[sha256sum] = "78e4e52c31600a99bb8050e94017123e447c6683d0f9d7a6c5b0d49c0da6f29a"
+SRC_URI[sha256sum] = "a2def047a73941e01a73739f92755f86b895811afb1f91243db214cff5bdac3f"
 SRC_URI = " \
-    https://github.com/ojdkbuild/contrib_jdk11u-ci/releases/download/jdk-11.0.15%2B10/jdk-11.0.15-ojdkbuild-linux-x64.zip \
+    https://download.java.net/java/GA/jdk21.0.2/f2283984656d49d69e91c558476027ac/13/GPL/openjdk-21.0.2_linux-x64_bin.tar.gz \
 "
 
-S = "${UNPACKDIR}/jdk-11.0.15-ojdkbuild-linux-x64"
+S = "${UNPACKDIR}/jdk-21.0.2"
 
 do_patch[noexec] = "1"
 do_configure[noexec] = "1"
 do_compile[noexec] = "1"
 
 do_install () {
-	install -d ${D}${libdir}/jvm/openjdk-11-native
-	cp -rf ${S}/* ${D}${libdir}/jvm/openjdk-11-native
+	install -d ${D}${libdir}/jvm/openjdk-21-native
+	cp -rf ${S}/* ${D}${libdir}/jvm/openjdk-21-native
 }
 
 inherit native
@@ -25,7 +24,7 @@ INHIBIT_SYSROOT_STRIP = "1"
 
 python __anonymous() {
     if d.getVar("BUILD_ARCH") != "x86_64":
-        msg =  "\nThe pre-build openjdk-11-native does not support %s host," % d.getVar("BUILD_ARCH")
+        msg =  "\nThe pre-build openjdk-21-native does not support %s host," % d.getVar("BUILD_ARCH")
         msg += "\nplease use the one in meta-java to replace,"
         msg += "\nadd meta-java to BBLAYERS in conf/bblayers.conf"
         raise bb.parse.SkipPackage(msg)
