WORKSPACE 文件

报告问题

本页面包含 WORKSPACE 文件中可用的全局方法。

会员

bind

None bind(name, actual=None)

警告:不建议使用 bind()。请参阅考虑解除绑定,以便就其问题和替代方案进行深入讨论。

//external 软件包中为目标提供别名。

参数

参数 说明
name 必需
“//external”下的标签,用作别名
actual string; or None; default = None
要别名的实际标签

注册执行平台

None register_execution_platforms(*platform_labels)

注册一个已定义的平台,以便 Bazel 可在工具链解析期间将其用作执行平台。

参数

参数 说明
platform_labels sequence of strings;必需
要注册的平台的标签。

注册工具链

None register_toolchains(*toolchain_labels)

注册已定义的工具链,以便 Bazel 可以在工具链解析期间使用它。查看定义注册工具链的示例。

参数

参数 说明
toolchain_labels sequence of strings;必需
要注册的工具链的标签。

工作区

None workspace(name)

此函数只能在 WORKSPACE 文件中使用,并且必须在 WORKSPACE 文件中的所有其他函数之前声明。每个 WORKSPACE 文件都应该有一个 workspace 函数。

设置此工作区的名称。工作区名称应为项目的 Java 软件包样式说明,使用下划线作为分隔符,例如 github.com/bazelbuild/bazel 应使用 com_github_bazelbuild_bazel。

此名称用于存储代码库的运行文件所在的目录。例如,如果本地代码库中有一个运行文件 foo/bar,并且 WORKSPACE 文件包含 workspace(name = 'baz'),则该运行文件将在 mytarget.runfiles/baz/foo/bar 下可用。如果未指定工作区名称,运行文件将通过符号链接至 bar.runfiles/foo/bar

远程代码库规则名称必须是有效的工作区名称。例如,您可以使用 maven_jar(name = 'foo'),但不能是 maven_jar(name = 'foo%bar'),因为 Bazel 会尝试为包含 workspace(name = 'foo%bar')maven_jar 写入 WORKSPACE 文件。

参数

参数 说明
name 必需
工作区的名称。名称必须以字母开头,且只能包含字母、数字、下划线、短划线和点。