栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

配置bazel以使用特定的JVM版本进行构建/测试

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

配置bazel以使用特定的JVM版本进行构建/测试

如何在项目基础上永久设置此选项,这样我就不必一直提供它们?我可以通过intellij Bazel插件自动选择它的方式来这样做吗?

是。将其添加到

<project root>/.bazelrc
所有使用本地JDK的版本中:

build --define=ABSOLUTE_JAVAbase=/usr/lib/jvm/java-8-openjdkbuild --host_javabase=@bazel_tools//tools/jdk:absolute_javabasebuild --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_vanillabuild --java_toolchain=@bazel_tools//tools/jdk:toolchain_vanilla

IntelliJ插件将自动获取这些信息。

或者,将它们分组在可以使用进行选择的

.bazelrc
配置下,因此默认的无配置版本不受影响。
local_jdk``bazel build//:target --config=local_jdk

build:local_jdk --define=ABSOLUTE_JAVAbase=/usr/lib/jvm/java-8-openjdkbuild:local_jdk --host_javabase=@bazel_tools//tools/jdk:absolute_javabasebuild:local_jdk --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_vanillabuild:local_jdk --java_toolchain=@bazel_tools//tools/jdk:toolchain_vanilla

--host_javabase
定义Java规则用于宿主工具编译的JDK的位置。

$ bazel query --output=build @bazel_tools//tools/jdk:absolute_javabasejava_runtime(  name = "absolute_javabase",  tags = ["__JAVA_RULES_MIGRATION_DO_NOT_USE_WILL_BREAK__"],  generator_name = "absolute_javabase",  generator_function = "java_runtime",  generator_location = "tools/jdk/BUILD:75",  java_home = "$(ABSOLUTE_JAVAbase)",)

--host_java_toolchain
定义用于宿主工具编译的Java工具集。

$ bazel query --output=build @bazel_tools//tools/jdk:toolchain_vanillajava_toolchain(  name = "toolchain_vanilla",  tags = ["__JAVA_RULES_MIGRATION_DO_NOT_USE_WILL_BREAK__"],  generator_name = "toolchain_vanilla",  generator_function = "default_java_toolchain",  generator_location = "tools/jdk/BUILD:367",  source_version = "",  target_version = "",  bootclasspath = ["@bazel_tools//tools/jdk:platformclasspath"],  misc = ["-XDskipDuplicateBridges=true", "-g", "-parameters"],  jvm_opts = [],  javac_supports_workers = True,  javac = ["@bazel_tools//tools/jdk:javac_jar"],  tools = ["@bazel_tools//tools/jdk:java_compiler_jar", "@bazel_tools//tools/jdk:jdk_compiler_jar"],  javabuilder = ["@bazel_tools//tools/jdk:vanillajavabuilder"],  singlejar = ["@bazel_tools//tools/jdk:singlejar"],  genclass = ["@bazel_tools//tools/jdk:genclass"],  ijar = ["@bazel_tools//tools/jdk:ijar"],  header_compiler = ["@bazel_tools//tools/jdk:turbine"],  header_compiler_direct = ["@bazel_tools//tools/jdk:turbine_direct"],  forcibly_disable_header_compilation = True,)

--java_toolchain
为目标定义用于Java编译的Java工具集。这独立
--host_java_toolchain
于将编译宿主工具与实际源代码编译解耦。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/446917.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号