WORKSPACE 文件中提供的方法。
成员
绑定
None
bind(name, actual=None)
已弃用:请参阅考虑移除绑定,查看有关其问题和替代方案的详尽讨论。Bzlmod 不支持 bind()
。
在 //external
软件包中为目标提供别名。
参数
参数 | 说明 |
---|---|
name
|
string;
必需 “//external”下的标签用作别名 |
actual
|
string;或 None ;
默认值为 None 要别名化的真实标签 |
register_execution_platforms
None
register_execution_platforms(*platform_labels)
@
或 //
开头)。如需了解详情,请参阅工具链解决方案。可扩展为多个目标的模式(例如 :all
)将按名称的字典顺序注册。
参数
参数 | 说明 |
---|---|
platform_labels
|
string 的序列;
必需 要注册的目标模式。 |
register_toolchains
None
register_toolchains(*toolchain_labels)
@
或 //
开头)。如需了解详情,请参阅工具链解决方案。扩展为多个目标的模式(例如 :all
)将按目标名称(而不是工具链实现的名称)的字典顺序注册。
参数
参数 | 说明 |
---|---|
toolchain_labels
|
string 的序列;
必需 要注册的目标模式。 |
工作区
None
workspace(name)
此函数只能在 WORKSPACE
文件中使用,并且必须在 WORKSPACE
文件中的所有其他函数之前声明。每个 WORKSPACE
文件都应该有一个 workspace
函数。
设置此工作区的名称。工作区名称应为项目的 Java 软件包式说明,使用下划线作为分隔符。例如,github.com/bazelbuild/bazel 应使用 com_github_bazelbuild_bazel。
此名称用于存储代码库的 runfile 的目录。例如,如果本地仓库中有 Runfile foo/bar
且 WORKSPACE 文件包含 workspace(name = 'baz')
,则此 Runfile 将在 mytarget.runfiles/baz/foo/bar
下可用。如果未指定工作区名称,则 runfile 将通过符号链接到 bar.runfiles/foo/bar
。
远程代码库规则名称必须是有效的工作区名称。例如,您可以使用 maven_jar(name = 'foo')
,但不能使用 maven_jar(name = 'foo%bar')
,因为 Bazel 会尝试为包含 workspace(name = 'foo%bar')
的 maven_jar
写入一个 WORKSPACE 文件。
参数
参数 | 说明 |
---|---|
name
|
string;
必需 工作区的名称名称必须以字母开头,且只能包含字母、数字、下划线、短划线和英文句点。 |