diff --git a/lib/modules/manager/asdf/extract.spec.ts b/lib/modules/manager/asdf/extract.spec.ts
index 164536d54d76fbaa574a59a4c45733122f5ae3f1..6cd45d7aa497c450b0d92ff794d2066b241b1296 100644
--- a/lib/modules/manager/asdf/extract.spec.ts
+++ b/lib/modules/manager/asdf/extract.spec.ts
@@ -621,6 +621,32 @@ awscli    2.8.6
           },
         ],
       });
+      const semeruJdkRes = extractPackageFile(
+        'java semeru-openj9-17.0.8.1+1_openj9-0.40.0'
+      );
+      expect(semeruJdkRes).toEqual({
+        deps: [
+          {
+            currentValue: '17.0.8.1+1',
+            datasource: 'java-version',
+            depName: 'java',
+            packageName: 'java-jdk',
+          },
+        ],
+      });
+      const semeruJreRes = extractPackageFile(
+        'java semeru-jre-openj9-17.0.8.1+1_openj9-0.40.0'
+      );
+      expect(semeruJreRes).toEqual({
+        deps: [
+          {
+            currentValue: '17.0.8.1+1',
+            datasource: 'java-version',
+            depName: 'java',
+            packageName: 'java-jre',
+          },
+        ],
+      });
       const temurinJdkRes = extractPackageFile('java temurin-16.0.0+36');
       expect(temurinJdkRes).toEqual({
         deps: [
diff --git a/lib/modules/manager/asdf/upgradeable-tooling.ts b/lib/modules/manager/asdf/upgradeable-tooling.ts
index bd39fa022aa3b03f88d4f1ba5656f3d6755ec2b6..3d6c5ad79f4fe8fd19d5133b9a40d84cdda32a08 100644
--- a/lib/modules/manager/asdf/upgradeable-tooling.ts
+++ b/lib/modules/manager/asdf/upgradeable-tooling.ts
@@ -261,6 +261,26 @@ export const upgradeableTooling: Record<string, ToolingDefinition> = {
           currentValue: adoptOpenJreMatches.version,
         };
       }
+      const semeruJdkMatches = version.match(
+        /^semeru-openj9-(?<version>\d\S+)_openj9-(?<openj9>\d\S+)/
+      )?.groups;
+      if (semeruJdkMatches) {
+        return {
+          datasource: JavaVersionDatasource.id,
+          packageName: 'java-jdk',
+          currentValue: semeruJdkMatches.version,
+        };
+      }
+      const semeruJreMatches = version.match(
+        /^semeru-jre-openj9-(?<version>\d\S+)_openj9-\d\S+/
+      )?.groups;
+      if (semeruJreMatches) {
+        return {
+          datasource: JavaVersionDatasource.id,
+          packageName: 'java-jre',
+          currentValue: semeruJreMatches.version,
+        };
+      }
       const temurinJdkMatches = version.match(
         /^temurin-(?<version>\d\S+)/
       )?.groups;