WORKSPACE 檔案中可用的函式。
成員
繫結
None
bind(name, actual=None)
警告:不建議使用 bind()
。請參閱「考慮移除 bind」,進一步瞭解相關問題和替代方案。
在 //external
套件中為目標指定別名。
參數
參數 | 說明 |
---|---|
name
|
必要 「//external」底下的標籤,做為別名名稱 |
actual
|
字串;或 None ;
預設為 None 要建立別名的實際標籤 |
register_execution_platforms
None
register_execution_platforms(*platform_labels)
參數
參數 | 說明 |
---|---|
platform_labels
|
字串的序列;
必要 要註冊的平台標籤。 |
register_toolchains
None
register_toolchains(*toolchain_labels)
參數
參數 | 說明 |
---|---|
toolchain_labels
|
字串的序列;
必要 要註冊的工具鍊標籤。標籤可以包含 :all ,在這種情況下,套件中所有提供工具鍊的目標都會依字典順序依名稱註冊。 |
工作區
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
|
必填 workspace 名稱。名稱開頭須為英文字母,而且只能使用英文字母、數字、底線、連字號和點。 |