使用 MSBuild.exe 在方案中建置特定目標
您可以使用 MSBuild.exe,在方案中建置特定專案的特定目標。
在方案中建置特定專案的特定目標
在命令列中,將目錄變更為解決方案資料夾,然後輸入
MSBuild.exe <SolutionName>.sln
,但還不要按 Enter 鍵。 使用您的解決方案名稱。以 <ProjectName>:<TargetName> 格式,在
-target:
切換之後指定目標。 如果專案名稱包含以下任何字元:%
、$
、@
、;
、.
、(
、)
或'
,將其取代為指定目標名稱中的_
。
如果您不確定哪些目標可用,您可以叫用 MSBuild 與 -targets
(-ts
) 切換,以取得單一專案可用的目標清單。 例如: MSBuild.exe -ts SomeProject.proj
。 -targets
或 -ts
選項僅適用於專案檔,而不是解決方案檔。
範例
下列範例會執行 NotInSlnFolder
專案的 Rebuild
目標,然後執行 InSolutionFolder
專案的 Clean
目標,其位於 NewFolder 方案資料夾中。
msbuild SlnFolders.sln -target:NotInSlnfolder:Rebuild;NewFolder\InSolutionFolder:Clean
組建特定目標也會觸發其他相依目標來組建。
疑難排解
如果您想要檢視解決方案專案,可以使用 MSBuild 所提供的偵錯選項。 設定環境變數 MSBUILDEMITSOLUTION=1
及建置解決方案。 這會產生名為 <SolutionName>.sln.metaproj 的 MSBuild 檔案,在建置階段顯示解決方案中 MSBuild 的內部檢視。 您可以檢查此檢視來判斷哪些目標可用來建置,以及其他設定詳細資料。
除非您需要這個內部檢視,否則請勿以此環境變數設定來建置。 此設定可能會在解決方案中建置專案時造成問題。 請改為查看二進位記錄。
相關內容
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應