Apple 應用程式與 Bazel

回報問題 查看原始碼 Nightly · 7.4 . 7.3 7.2 7.1 7.0 6.5

本頁面提供的資源可協助您使用 Bazel 建構 macOS 和 iOS 專案。這份文件會連結至教學課程、建構規則和其他資訊,這些資訊專門說明如何使用 Bazel 建構及測試這些平台。

使用 Bazel

下列資源可協助您在 macOS 和 iOS 專案中使用 Bazel:

遷移至 Bazel

如果您目前使用 Xcode 建構 macOS 和 iOS 專案,請按照下列步驟操作 ,以開始使用 Bazel 進行建構:

Apple 應用程式和新規則

注意:建立新規則適用於進階建構和測試情境。您在開始使用 Bazel 時並不需要。

建構 macOS 和 iOS 專案時,您可以使用下列模組、設定片段和提供者擴充 Bazel 的功能

Xcode 選項

如果您的建構需要 Xcode,Bazel 會根據 --xcode_config--xcode_version 標記選取適當的版本。--xcode_config 會使用 如果有可用的 Xcode 版本,會設定預設版本 --xcode_version 並未傳遞。這項預設值是由 --xcode_version 旗標,只要設定成 在 --xcode_config 目標之間表示。

如果您未傳遞 --xcode_config,Bazel 會使用自動產生的 XcodeVersionConfig,代表主機上可用的 Xcode 版本。預設版本為最新可用的 Xcode 版本。這類型適合用於本機執行。

如果您要執行遠端建構作業,請將 --xcode_config 設為 xcode_config 目標,其 versions 屬性為遠端可用的 xcode_version 目標清單,而 default 屬性為其中一個 xcode_versions

如果您使用動態執行功能,應將 --xcode_config 設為 xcode_config 目標,其 remote_versions 屬性為包含遠端可用的 Xcode 版本的 available_xcodes 目標,而 local_versions 屬性則為包含本機可用的 Xcode 版本的 available_xcodes 目標。針對 local_versions, 建議您使用系統自動產生的 @local_config_xcode//:host_available_xcodes。預設的 Xcode 版本為最新的互通版本 (如果有),否則為 local_versions 目標的預設版本。如果您想使用 local_versions 預設值做為預設值,可以傳遞 --experimental_prefer_mutual_default=false