-
Notifications
You must be signed in to change notification settings - Fork 4.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Allow Bazel's own build to use Java 11 language features #14592
Comments
After checking out latest master and run
My local |
Are you using bazel 5.0.0? |
Ah, Bazel 5.0 fixed the issue. I was on Bazel 4.2.2. Didn't realize that Bazel now requires 5.0 to build itself 3 days after its released. |
but i also meet this issue with bazel 5.0 |
3.1 bazelbuild#15168 distdir_deps.bzl 文件修改 "abseil-cpp": { "archive": "997aaf3a28308eba1b9156aa35ab7bca9688e9f6.tar.gz", "sha256": "35f22ef5cb286f09954b7cc4c85b5a3f6221c9d4df6b8c4a1e9d399555b366ee", "urls": [ "https://mirror.bazel.build/github.com/abseil/abseil-cpp/archive/997aaf3a28308eba1b9156aa35ab7bca9688e9f6.tar.gz", "https://github.com/abseil/abseil-cpp/archive/997aaf3a28308eba1b9156aa35ab7bca9688e9f6.tar.gz", ], "used_in": [ "additional_distfiles", "test_WORKSPACE_files", ], }, "com_google_absl": { "archive": "20211102.0.tar.gz", "sha256": "dcf71b9cba8dc0ca9940c4b316a0c796be8fab42b070bb6b7cab62b48f0e66c4", "urls": [ "https://mirror.bazel.build/github.com/abseil/abseil-cpp/archive/refs/tags/20211102.0.tar.gz", "https://github.com/abseil/abseil-cpp/archive/refs/tags/20211102.0.tar.gz", ], "used_in": [ "additional_distfiles", "test_WORKSPACE_files", ], "strip_prefix": "abseil-cpp-20211102.0", }, WORKSPACE 文件增加 # Override the abseil-cpp version defined in grpc_deps(), which doesn't work on latest macOS # Fixes bazelbuild#15168 dist_http_archive( name = "com_google_absl", ) 3.2 src/main/java/net/starlark/java/eval/EvalUtils.java:399: 错误: 找不到符号 return s.repeat(n); ^ 符号: 方法 repeat(int) 位置: 类型为String的变量 s .bazelrc # Enable Bzlmod build:bzlmod --experimental_enable_bzlmod # TODO(pcloudy): The following should be removed after fixing bazelbuild#14279 build:bzlmod --crosstool_top=@rules_cc.0.0.1.cc_configure.local_config_cc//:toolchain build:bzlmod --xcode_version_config=@rules_cc.0.0.1.cc_configure.local_config_xcode//:host_xcodes # Enable Java 11 language features (bazelbuild#14592) # Toolchain resolution configuration for Bazel >= 5 build --java_language_version=11 build --tool_java_language_version=11 # Legacy configuration for Bazel <= 4 build --java_toolchain=@bazel_tools//tools/jdk:toolchain_java11 build --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_java11
3.1 bazelbuild#15168 distdir_deps.bzl 文件修改 "abseil-cpp": { "archive": "997aaf3a28308eba1b9156aa35ab7bca9688e9f6.tar.gz", "sha256": "35f22ef5cb286f09954b7cc4c85b5a3f6221c9d4df6b8c4a1e9d399555b366ee", "urls": [ "https://mirror.bazel.build/github.com/abseil/abseil-cpp/archive/997aaf3a28308eba1b9156aa35ab7bca9688e9f6.tar.gz", "https://github.com/abseil/abseil-cpp/archive/997aaf3a28308eba1b9156aa35ab7bca9688e9f6.tar.gz", ], "used_in": [ "additional_distfiles", "test_WORKSPACE_files", ], }, "com_google_absl": { "archive": "20211102.0.tar.gz", "sha256": "dcf71b9cba8dc0ca9940c4b316a0c796be8fab42b070bb6b7cab62b48f0e66c4", "urls": [ "https://mirror.bazel.build/github.com/abseil/abseil-cpp/archive/refs/tags/20211102.0.tar.gz", "https://github.com/abseil/abseil-cpp/archive/refs/tags/20211102.0.tar.gz", ], "used_in": [ "additional_distfiles", "test_WORKSPACE_files", ], "strip_prefix": "abseil-cpp-20211102.0", }, WORKSPACE 文件增加 # Override the abseil-cpp version defined in grpc_deps(), which doesn't work on latest macOS # Fixes bazelbuild#15168 dist_http_archive( name = "com_google_absl", ) 3.2 src/main/java/net/starlark/java/eval/EvalUtils.java:399: 错误: 找不到符号 return s.repeat(n); ^ 符号: 方法 repeat(int) 位置: 类型为String的变量 s .bazelrc # Enable Bzlmod build:bzlmod --experimental_enable_bzlmod # TODO(pcloudy): The following should be removed after fixing bazelbuild#14279 build:bzlmod --crosstool_top=@rules_cc.0.0.1.cc_configure.local_config_cc//:toolchain build:bzlmod --xcode_version_config=@rules_cc.0.0.1.cc_configure.local_config_xcode//:host_xcodes # Enable Java 11 language features (bazelbuild#14592) # Toolchain resolution configuration for Bazel >= 5 build --java_language_version=11 build --tool_java_language_version=11 # Legacy configuration for Bazel <= 4 build --java_toolchain=@bazel_tools//tools/jdk:toolchain_java11 build --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_java11 ------------- def use_cpp_toolchain(mandatory = True): """ Helper to depend on the c++ toolchain. Usage: ``` my_rule = rule( toolchains = [other toolchain types] + use_cpp_toolchain(), ) ``` Args: mandatory: Whether or not it should be an error if the toolchain cannot be resolved. Currently ignored, this will be enabled when optional toolchain types are added. Returns: A list that can be used as the value for `rule.toolchains`. """ return [CPP_TOOLCHAIN_TYPE]
Bazel's build now requires a minimum of JDK 11, but it's still configured to use Java 8 language features.
We should enable Java 11 language features for Bazel.
e.g.
The text was updated successfully, but these errors were encountered: