Register Java 8 runtimes with Bzlmod
Copybara Import from https://github.com/bazelbuild/rules_java/pull/181
BEGIN_PUBLIC
Register Java 8 runtimes with Bzlmod (#181)
These runtimes were only registered when using WORKSPACE.
Work towards bazelbuild/bazel#21769
Closes #181
END_PUBLIC
COPYBARA_INTEGRATE_REVIEW=https://github.com/bazelbuild/rules_java/pull/181 from fmeum:java-8 7a05002ac90e6d561503a0dc89cacda7f8b14895
PiperOrigin-RevId: 621488116
Change-Id: I106d991108eaff91379f5391b5f908e7d5793aab
diff --git a/MODULE.bazel b/MODULE.bazel
index 97b74ba..9562fe7 100644
--- a/MODULE.bazel
+++ b/MODULE.bazel
@@ -35,6 +35,15 @@
# Declare all remote jdk toolchain config repos
JDKS = {
+ # Must match JDK repos defined in remote_jdk8_repos()
+ "8": [
+ "linux",
+ "linux_aarch64",
+ "linux_s390x",
+ "macos",
+ "macos_aarch64",
+ "windows",
+ ],
# Must match JDK repos defined in remote_jdk11_repos()
"11": [
"linux",
@@ -70,7 +79,7 @@
],
}
-REMOTE_JDK_REPOS = [("remotejdk" + version + "_" + platform) for version in JDKS for platform in JDKS[version]]
+REMOTE_JDK_REPOS = [(("remote_jdk" if version == "8" else "remotejdk") + version + "_" + platform) for version in JDKS for platform in JDKS[version]]
[use_repo(
toolchains,
diff --git a/java/extensions.bzl b/java/extensions.bzl
index 0fff36b..3699aca 100644
--- a/java/extensions.bzl
+++ b/java/extensions.bzl
@@ -13,11 +13,20 @@
# limitations under the License.
"""Module extensions for rules_java."""
-load("//java:repositories.bzl", "java_tools_repos", "local_jdk_repo", "remote_jdk11_repos", "remote_jdk17_repos", "remote_jdk21_repos")
+load(
+ "//java:repositories.bzl",
+ "java_tools_repos",
+ "local_jdk_repo",
+ "remote_jdk11_repos",
+ "remote_jdk17_repos",
+ "remote_jdk21_repos",
+ "remote_jdk8_repos",
+)
def _toolchains_impl(_ctx):
java_tools_repos()
local_jdk_repo()
+ remote_jdk8_repos()
remote_jdk11_repos()
remote_jdk17_repos()
remote_jdk21_repos()
diff --git a/java/repositories.bzl b/java/repositories.bzl
index a97e150..beef765 100644
--- a/java/repositories.bzl
+++ b/java/repositories.bzl
@@ -167,19 +167,6 @@
],
version = "8",
)
- REMOTE_JDK8_REPOS = [
- "remote_jdk8_linux_aarch64",
- "remote_jdk8_linux_s390x",
- "remote_jdk8_linux",
- "remote_jdk8_macos_aarch64",
- "remote_jdk8_macos",
- "remote_jdk8_windows",
- ]
- for name in REMOTE_JDK8_REPOS:
- native.register_toolchains(
- "@" + name + "_toolchain_config_repo//:toolchain",
- "@" + name + "_toolchain_config_repo//:bootstrap_runtime_toolchain",
- )
def remote_jdk11_repos():
"""Imports OpenJDK 11 repositories."""
@@ -581,6 +568,8 @@
name: The name of this macro (not used)
"""
JDKS = {
+ # Must match JDK repos defined in remote_jdk8_repos()
+ "8": ["linux", "linux_aarch64", "linux_s390x", "macos", "macos_aarch64", "windows"],
# Must match JDK repos defined in remote_jdk11_repos()
"11": ["linux", "linux_aarch64", "linux_ppc64le", "linux_s390x", "macos", "macos_aarch64", "win", "win_arm64"],
# Must match JDK repos defined in remote_jdk17_repos()
@@ -589,7 +578,7 @@
"21": ["linux", "linux_aarch64", "macos", "macos_aarch64", "win"],
}
- REMOTE_JDK_REPOS = [("remotejdk" + version + "_" + platform) for version in JDKS for platform in JDKS[version]]
+ REMOTE_JDK_REPOS = [(("remote_jdk" if version == "8" else "remotejdk") + version + "_" + platform) for version in JDKS for platform in JDKS[version]]
native.register_toolchains(
"//toolchains:all",