使用 MSBuild API
MSBuild 提供公開的 API 介面,讓您的程式可以執行建置並檢查專案。 最新版本的 MSBuild API 可以在下列的 NuGet 套件中找到:
封裝名稱 | 描述 |
---|---|
Microsoft.Build | 包含可用來建立、編輯及評估 MSBuild 專案的 Microsoft.Build 組件。 |
Microsoft.Build.Framework | 包含其他 MSBuild 組件所使用的一般 MSBuild 架構組件。 |
Microsoft.Build.Runtime | 提供 MSBuild 的完整可執行檔副本。 只有在您的應用程式需要載入專案或執行處理程序內的建置 (不需要安裝 MSBuild) 時,才引用此套件。 若要順利評估使用此套件的專案,則需要將其他元件 (如編譯器) 彙集到一個應用程式目錄中。 |
Microsoft.Build.Tasks.Core | 包含實作 MSBuild 常用工作的 Microsoft.Build.Tasks 組件。 |
Microsoft.Build.Utilities.Core | 包含可用來實作自訂 MSBuild 工作的 Microsoft.Build.Utilities 組件。 |
此外,NuGet 也裝載了一個舊版的組件:Microsoft.Build.Engine (已棄用)。
MSBuild API 有數個不同的版本,對於版本 15 和 16,NuGet 套件中有兩種不同形式的組件:一種是使用 .NET Framework 編譯,而另一種是使用 .NET Core 編譯 (它是 .NET Framework API 介面的子集)。 當您叫用 dotnet
命令,以及在 Mac 和 Linux 系統上使用 MSBuild 時,會使用 MSBuild 的 .NET Core 版本。
您可以使用 .NET API 瀏覽器或瀏覽下列清單中的命名空間來找到 MSBuild API 的文件。
Namespace | 套用至 | 描述 |
---|---|---|
Microsoft.Build.Construction | 全部 | 包含 MSBuild 物件模型用來建構含未評估值之專案根目錄的類型。 每個專案根目錄都對應於一個專案或目標檔案。 |
Microsoft.Build.Definition | 全部 | 包含 ProjectOptions 類別 (支援專案建構)。 |
Microsoft.Build.Evaluation | 全部 | 包含 MSBuild 物件模型用來評估專案的類型。 每個專案都與一或多個專案根目錄相關聯。 |
Microsoft.Build.Evaluation.Context | 全部 | 包含 EvaluationContext 類別 (用來儲存每次呼叫的評估狀態)。 |
Microsoft.Build.Exceptions | 全部 | 包含建置過程可能擲出的異常類型。 |
Microsoft.Build.Execution | 全部 | 包含 MSBuild 物件模型用來建置專案的類型。 |
Microsoft.Build.Framework | 全部 | 包含定義工作和記錄器如何與 MSBuild 引擎互動的型別。 |
Microsoft.Build.Framework.Profiler | 全部 | 包含支援效能分析的類型。 |
Microsoft.Build.Framework.XamlTypes | 僅限 .NET Framework | 包含用來表示從檔案、規則和其他來源中剖析的 XAML 類型的類別。 |
Microsoft.Build.Globbing | 全部 | 包含支援萬用字元處理的類別。 |
Microsoft.Build.Globbing.Extensions | 全部 | 包含支援萬用字元處理延伸模組的類型。 |
Microsoft.Build.Graph | 全部 | 包含支援 -graph MSBuild 參數的類型。 |
Microsoft.Build.Logging | 全部 | 包含用來記錄組建進度的類型。 |
Microsoft.Build.ObjectModelRemoting | 全部 | 包含支援 MSBuild 中遠端處理的類型。 |
Microsoft.Build.Tasks | 全部 | 包含 MSBuild 中所提供的所有工作實作。 |
Microsoft.Build.Tasks.Deployment.Bootstrapper | 僅限 .NET Framework | 包含 MSBuild 內部使用的類別。 |
Microsoft.Build.Tasks.Deployment.ManifestUtilities | 僅限 .NET Framework | 包含 MSBuild 使用的類別。 |
Microsoft.Build.Tasks.Hosting | 全部 | 包含 MSBuild 內部使用的類別。 |
Microsoft.Build.Tasks.Xaml | 僅限 .NET Framework | 包含與 XAML 建置工作相關的類別。 |
Microsoft.Build.Utilities | 全部 | 包含一些協助程式類別,您可用來建立自己的 MSBuild 記錄器和工作。 |
在上表中,「適用於」欄中的「全部」表示命名空間中的類型在 MSBuild API 的 .NET Framework 和 .NET Core 版本中都可以使用。
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應