WORKSPACE 文件中可用的方法。
成员
绑定
None
bind(name, actual=None)
已弃用:如需详细了解其问题和替代方案,请参阅考虑移除 bind。bind()
在 Bzlmod 中不可用。
为 //external
软件包中的目标指定别名。
参数
参数 | 说明 |
---|---|
name
|
字符串;
必需 '//external' 下的标签,用作别名 |
actual
|
string;或 None ;
默认值为 None 要别名的真实标签 |
register_execution_platforms
None
register_execution_platforms(*platform_labels)
@
或 //
开头)。如需了解详情,请参阅工具链解析。扩展为多个目标的模式(例如 :all
)将按名称的字典顺序注册。
参数
参数 | 说明 |
---|---|
platform_labels
|
字符串的序列;必需 要注册的目标模式。 |
register_toolchains
None
register_toolchains(*toolchain_labels)
@
或 //
开头)。如需了解详情,请参阅工具链解析。扩展为多个目标的模式(例如 :all
)将按目标名称(而非工具链实现名称)以字典顺序注册。
参数
参数 | 说明 |
---|---|
toolchain_labels
|
字符串的序列;必需 要注册的目标模式。 |
工作区
None
workspace(name)
此函数只能在 WORKSPACE
文件中使用,并且必须在 WORKSPACE
文件中的所有其他函数之前声明。每个 WORKSPACE
文件都应有一个 workspace
函数。
为相应工作区设置名称。工作区名称应采用 Java 软件包风格的项目说明,使用下划线作为分隔符,例如 github.com/bazelbuild/bazel 应使用 com_github_bazelbuild_bazel。
此名称用于存储代码库运行时文件的目录。例如,如果本地代码库中有一个 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;
必需 工作区的名称。名称必须以字母开头,并且只能包含字母、数字、下划线、短划线和点。 |