Bazel 正在下载并使用旧的 Java 11.0.1。 从那时起,Java 11 已经有五个版本带有安全更新。
我可以让 Bazel 使用我的本地 JDK,但这有明显的缺点。
如何使用安全的最新版本的 JDK 进行构建?
我完全不相信这是必要的。 (请参阅我对这个问题的评论。
但是,如果你真的想改变Bazel的内置Java,你可以采取以下方法之一:
- 按照"为 Bazel 做出贡献"页面中的说明进行操作。 请注意,您需要安装 Bazel 才能构建 Bazel。 我假设您可以选择(以某种方式(嵌入在"可分发"中的 Java......或者由它下载,如果这是正在发生的事情。
- 有一个"compile.sh"文件可能是替代文件。 (我没有太认真地看它。
- 您可以以正常方式下载并安装 Bazel,并调整安装以将嵌入式 Java 替换为您想要的任何内容。 例如,尝试将其内部 Java 安装树替换为指向系统 Java 安装的符号链接,该符号链接使用 Linux 包管理器保持最新状态。
Bazel 2.0.0 中有一个--javabse
选项(以及其他一些 Bazel 版本(:
-javabase (label( 此选项设置基本 Java 安装的标签,以用于 bazel run、bazel test 和 Java 二进制文件 由java_binary和java_test规则构建。
只需在WORKSPACE
文件旁边添加一个.bazelrc
文件:
.bazelrc
build --javabase=//my_tools/my_own_jdk
也看看java_runtime()