Bazel: Switch to using toolchain resolution for java rules
Bump Bazel version to release 5.0.0. In this new Bazel release, --incompatible_use_toolchain_resolution_for_java_rules is flipped, that means that the build must be adapted to toolchain resolution. Specification toolchain resolution for java rules is here: [1]. Main tracking Bazel issue is here: [2]. Given that new Bazel release also added support for remote JDK 17, add experimental support for building with remote JDK 17 to produce major byte code version 61. Test Plan: To build with remote JDK 11 run: $ bazel build :all To build with remote JDK 17 run: $ bazel build --config java17 :all [1] https://docs.google.com/document/d/1MVbBxbKVKRJJY7DnkptHpvz7ROhyAYy4a-TZ-n7Q0r4/edit?usp=sharing [2] https://github.com/bazelbuild/bazel/issues/7849 Change-Id: I8d26dff722c6677ea7642913b61e416b23ea9041
This commit is contained in:
parent
c812947962
commit
be732c16ab
13
.bazelrc
13
.bazelrc
|
@ -3,7 +3,18 @@ build --repository_cache=~/.gerritcodereview/bazel-cache/repository
|
||||||
build --experimental_strict_action_env
|
build --experimental_strict_action_env
|
||||||
build --action_env=PATH
|
build --action_env=PATH
|
||||||
build --disk_cache=~/.gerritcodereview/bazel-cache/cas
|
build --disk_cache=~/.gerritcodereview/bazel-cache/cas
|
||||||
build --java_toolchain //tools:error_prone_warnings_toolchain
|
|
||||||
|
# Builds using remote_jdk11, executes using remote_jdk11 or local_jdk
|
||||||
|
build --java_language_version=11
|
||||||
|
build --java_runtime_version=remotejdk_11
|
||||||
|
build --tool_java_language_version=11
|
||||||
|
build --tool_java_runtime_version=remotejdk_11
|
||||||
|
|
||||||
|
# Builds using remote_jdk17, executes using remote_jdk11 or local_jdk
|
||||||
|
build:java17 --java_language_version=17
|
||||||
|
build:java17 --java_runtime_version=remotejdk_17
|
||||||
|
build:java17 --tool_java_language_version=17
|
||||||
|
build:java17 --tool_java_runtime_version=remotejdk_17
|
||||||
|
|
||||||
test --build_tests_only
|
test --build_tests_only
|
||||||
test --test_output=errors
|
test --test_output=errors
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
4.0.0
|
5.0.0
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
workspace(name = "jgit")
|
workspace(name = "jgit")
|
||||||
|
|
||||||
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
|
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
|
||||||
|
|
||||||
load("//tools:bazlets.bzl", "load_bazlets")
|
load("//tools:bazlets.bzl", "load_bazlets")
|
||||||
|
|
||||||
load_bazlets(commit = "f30a992da9fc855dce819875afb59f9dd6f860cd")
|
load_bazlets(commit = "f30a992da9fc855dce819875afb59f9dd6f860cd")
|
||||||
|
@ -11,6 +10,10 @@ load(
|
||||||
"maven_jar",
|
"maven_jar",
|
||||||
)
|
)
|
||||||
|
|
||||||
|
register_toolchains("//tools:error_prone_warnings_toolchain_java11_definition")
|
||||||
|
|
||||||
|
register_toolchains("//tools:error_prone_warnings_toolchain_java17_definition")
|
||||||
|
|
||||||
JMH_VERS = "1.32"
|
JMH_VERS = "1.32"
|
||||||
|
|
||||||
maven_jar(
|
maven_jar(
|
||||||
|
|
14
tools/BUILD
14
tools/BUILD
|
@ -5,7 +5,7 @@ load(
|
||||||
load("@rules_java//java:defs.bzl", "java_package_configuration")
|
load("@rules_java//java:defs.bzl", "java_package_configuration")
|
||||||
|
|
||||||
default_java_toolchain(
|
default_java_toolchain(
|
||||||
name = "error_prone_warnings_toolchain",
|
name = "error_prone_warnings_toolchain_java11",
|
||||||
package_configuration = [
|
package_configuration = [
|
||||||
":error_prone",
|
":error_prone",
|
||||||
],
|
],
|
||||||
|
@ -14,6 +14,18 @@ default_java_toolchain(
|
||||||
visibility = ["//visibility:public"],
|
visibility = ["//visibility:public"],
|
||||||
)
|
)
|
||||||
|
|
||||||
|
default_java_toolchain(
|
||||||
|
name = "error_prone_warnings_toolchain_java17",
|
||||||
|
configuration = dict(),
|
||||||
|
java_runtime = "@bazel_tools//tools/jdk:remotejdk_17",
|
||||||
|
package_configuration = [
|
||||||
|
":error_prone",
|
||||||
|
],
|
||||||
|
source_version = "17",
|
||||||
|
target_version = "17",
|
||||||
|
visibility = ["//visibility:public"],
|
||||||
|
)
|
||||||
|
|
||||||
# Error Prone errors enabled by default; see ../.bazelrc for how this is
|
# Error Prone errors enabled by default; see ../.bazelrc for how this is
|
||||||
# enabled. This warnings list is originally based on:
|
# enabled. This warnings list is originally based on:
|
||||||
# https://github.com/bazelbuild/BUILD_file_generator/blob/master/tools/bazel_defs/java.bzl
|
# https://github.com/bazelbuild/BUILD_file_generator/blob/master/tools/bazel_defs/java.bzl
|
||||||
|
|
Loading…
Reference in New Issue