module( name = "rules_java", version = "6.1.1", compatibility_level = 1, ) bazel_dep(name = "platforms", version = "0.0.4") bazel_dep(name = "rules_cc", version = "0.0.2") bazel_dep(name = "bazel_skylib", version = "1.2.0") # Required by @remote_java_tools, which is loaded via module extension. bazel_dep(name = "rules_proto", version = "4.0.0") bazel_dep(name = "rules_license", version = "0.0.3") register_toolchains("//toolchains:all") toolchains = use_extension("//java:extensions.bzl", "toolchains") # Declare remote java tools repos use_repo(toolchains, "remote_java_tools") use_repo(toolchains, "remote_java_tools_linux") use_repo(toolchains, "remote_java_tools_windows") use_repo(toolchains, "remote_java_tools_darwin_x86_64") use_repo(toolchains, "remote_java_tools_darwin_arm64") # Declare local jdk repo use_repo(toolchains, "local_jdk") register_toolchains("@local_jdk//:runtime_toolchain_definition") # Declare all remote jdk toolchain config repos JDKS = { # 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() "17": [ "linux", "linux_aarch64", "linux_ppc64le", "linux_s390x", "macos", "macos_aarch64", "win", "win_arm64", ], # Must match JDK repos defined in remote_jdk20_repos() "20": [ "linux", "linux_aarch64", "macos", "macos_aarch64", "win", ], } REMOTE_JDK_REPOS = [("remotejdk" + version + "_" + platform) for version in JDKS for platform in JDKS[version]] [use_repo( toolchains, repo + "_toolchain_config_repo", ) for repo in REMOTE_JDK_REPOS] [register_toolchains("@" + name + "_toolchain_config_repo//:toolchain") for name in REMOTE_JDK_REPOS] # Dev dependencies bazel_dep(name = "rules_pkg", version = "0.5.1", dev_dependency = True)