VSBuild@1 - Visual Studio 組建 v1 工作
使用此工作來建置 MSBuild,並設定 Visual Studio 版本屬性。 深入瞭解如何在 Azure 上安裝 Visual Studio 映射。
Syntax
# Visual Studio build v1
# Build with MSBuild and set the Visual Studio version property.
- task: VSBuild@1
inputs:
solution: '**\*.sln' # string. Required. Solution. Default: **\*.sln.
#vsVersion: 'latest' # 'latest' | '17.0' | '16.0' | '15.0' | '14.0' | '12.0' | '11.0'. Visual Studio Version. Default: latest.
#msbuildArgs: # string. MSBuild Arguments.
#platform: # string. Platform.
#configuration: # string. Configuration.
#clean: false # boolean. Clean. Default: false.
# Advanced
#maximumCpuCount: false # boolean. Build in Parallel. Default: false.
#restoreNugetPackages: false # boolean. Restore NuGet Packages. Default: false.
#msbuildArchitecture: 'x86' # 'x86' | 'x64'. MSBuild Architecture. Default: x86.
#logProjectEvents: true # boolean. Record Project Details. Default: true.
#createLogFile: false # boolean. Create Log File. Default: false.
#logFileVerbosity: 'normal' # 'quiet' | 'minimal' | 'normal' | 'detailed' | 'diagnostic'. Optional. Use when createLogFile = true. Log File Verbosity. Default: normal.
#enableDefaultLogger: true # boolean. Enable Default Logger. Default: true.
#customVersion: # string. Custom Version.
# Visual Studio build v1
# Build with MSBuild and set the Visual Studio version property.
- task: VSBuild@1
inputs:
solution: '**\*.sln' # string. Required. Solution. Default: **\*.sln.
#vsVersion: 'latest' # 'latest' | '16.0' | '15.0' | '14.0' | '12.0' | '11.0'. Visual Studio Version. Default: latest.
#msbuildArgs: # string. MSBuild Arguments.
#platform: # string. Platform.
#configuration: # string. Configuration.
#clean: false # boolean. Clean. Default: false.
# Advanced
#maximumCpuCount: false # boolean. Build in Parallel. Default: false.
#restoreNugetPackages: false # boolean. Restore NuGet Packages. Default: false.
#msbuildArchitecture: 'x86' # 'x86' | 'x64'. MSBuild Architecture. Default: x86.
#logProjectEvents: true # boolean. Record Project Details. Default: true.
#createLogFile: false # boolean. Create Log File. Default: false.
#logFileVerbosity: 'normal' # 'quiet' | 'minimal' | 'normal' | 'detailed' | 'diagnostic'. Optional. Use when createLogFile = true. Log File Verbosity. Default: normal.
# Visual Studio Build v1
# Build with MSBuild and set the Visual Studio version property.
- task: VSBuild@1
inputs:
solution: '**\*.sln' # string. Required. Solution. Default: **\*.sln.
#vsVersion: 'latest' # 'latest' | '16.0' | '15.0' | '14.0' | '12.0' | '11.0'. Visual Studio Version. Default: latest.
#msbuildArgs: # string. MSBuild Arguments.
#platform: # string. Platform.
#configuration: # string. Configuration.
#clean: false # boolean. Clean. Default: false.
# Advanced
#maximumCpuCount: false # boolean. Build in Parallel. Default: false.
#restoreNugetPackages: false # boolean. Restore NuGet Packages. Default: false.
#msbuildArchitecture: 'x86' # 'x86' | 'x64'. MSBuild Architecture. Default: x86.
#logProjectEvents: true # boolean. Record Project Details. Default: true.
#createLogFile: false # boolean. Create Log File. Default: false.
輸入
solution
- 解決方案
string
. 必要。 預設值:**\*.sln
。
指定要在建置程式中使用之工作的解決方案。
如果您要建置單一解決方案,請按下 ... 按鈕並指定解決方案。
如果您想要建置多個解決方案,請指定搜尋準則。 您可以使用單一資料夾通配符 () *
和遞迴通配符 (**
) 。 例如, **.sln
搜尋所有子目錄中的所有.sln檔案。
請確定您指定的解決方案是由此組建管線下載。 在 [存放庫] 索引標籤上:
- 如果您使用 TFVC,請確定解決方案是 [存放庫] 索引卷標上其中一個對應的子系。
- 如果您使用 Git,請確定專案或方案位於您的 Git 存放庫中,以及您要建置的分支中。
提示
- 您也可以建置 MSBuild 專案 (.*proj) 檔案。
- 如果您要建置自定義的 MSBuild 專案檔,建議您使用 MSBuild 工作,而不是 Visual Studio 建置工作。
vsVersion
- Visual Studio 版本
string
. 允許的值:latest
、 17.0
(Visual Studio 2022) 、 16.0
(Visual Studio 2019) 、 (Visual Studio 2017) 、 15.0
14.0
(Visual Studio 2015) 12.0
、 (Visual Studio 2013) 11.0
、 (Visual Studio 2012) 。 預設值:latest
。
此輸入的值必須符合用來建立解決方案的Visual Studio版本。
將 /p:VisualStudioVersion={numeric_visual_studio_version}
自變數新增至組建所執行的 MSBuild 命令。 例如,如果您指定 Visual Studio 2015, /p:VisualStudioVersion=14.0
則會新增至 MSBuild 命令。
Azure Pipelines:如果您的小組想要搭配 Microsoft 裝載的代理程式使用 Visual Studio,請選取 [windows-latest ] 作為預設建置集區。 請參閱 Microsoft 裝載的代理程式。
vsVersion
- Visual Studio 版本
string
. 允許的值:latest
、 16.0
(Visual Studio 2019) 、 15.0
(Visual Studio 2017) 、 14.0
(Visual Studio 2015) 12.0
、 (Visual Studio 2013) 11.0
、 (Visual Studio 2012) 。 預設值:latest
。
此輸入的值必須符合用來建立解決方案的Visual Studio版本。
將 /p:VisualStudioVersion={numeric_visual_studio_version}
自變數新增至組建所執行的 MSBuild 命令。 例如,如果您指定 Visual Studio 2015, /p:VisualStudioVersion=14.0
則會新增至 MSBuild 命令。
Azure Pipelines:如果您的小組想要搭配 Microsoft 裝載的代理程式使用 Visual Studio,請選取 [windows-latest ] 作為預設建置集區。 請參閱 Microsoft 裝載的代理程式。
platform
- 平臺
string
.
指定您要建置的平臺,例如 Win32
、 x86
、 x64
或 any cpu
。
提示
- 如果您要以 MSBuild 項目為目標, (.*proj) 檔案而非解決方案,請指定
AnyCPU
(沒有空格符) 。 - 宣告建置變數,例如
BuildPlatform
在 [變數] 索引標籤上, (選取 [在佇列時間允許]) 並將它參考為$(BuildPlatform)
。 如此一來,您可以在將組建排入佇列並啟用建置多個組態時修改平臺。
configuration
- 配置
string
.
指定您要建置的組態,例如 debug
或 release
。
提示
宣告建置變數,例如 BuildConfiguration
在 [變數] 索引標籤上, (選取 [在佇列時間允許]) 並將它參考為 $(BuildConfiguration)
。 如此一來,您可以在將組建排入佇列並啟用建置多個組態時修改平臺。
clean
- 清潔
boolean
. 預設值:false
。
如果設定為 false
,則工作會建立累加建置。 此設定可能會降低建置時間,特別是如果您的程式代碼基底很大時。 除非您也將 Clean 存放庫設定為 false
,否則此選項沒有實際的效果。
如果設定為 true
,則工作會重建程式碼專案中的所有程序代碼。 這相當於 MSBuild /target:clean
自變數。
maximumCpuCount
- 平行建置
boolean
. 預設值:false
。
選擇性。 如果您的 MSBuild 目標組態與平行建置相容,您可以檢查此輸入,將參數傳遞 /m
至 MSBuild (Windows) 。 如果您的目標組態與平行建置不相容,請檢查此選項可能會導致您的組建產生使用中的檔案錯誤,或間歇性或不一致的建置失敗。
restoreNugetPackages
- 還原 NuGet 套件
boolean
. 預設值:false
。
此輸入已被取代。 若要還原 NuGet 套件,請在建置之前新增 NuGet 工具安裝程式 工作。
msbuildArchitecture
- MSBuild 架構
string
. 允許的值: x86
(MSBuild x86) , x64
(MSBuild x64) 。 預設值:x86
。
選擇性。 提供要執行的 MSBuild 架構 (x86
或 x64
) 。
提示
因為 Visual Studio 是以 32 位應用程式的形式執行,所以當組建是由執行 64 位版本的 Team Foundation Build Service 的組建代理程式處理時,您可能會遇到問題。 藉由選取 MSBuild x86
,您可以解決這些問題。
logProjectEvents
- 記錄專案詳細數據
boolean
. 預設值:true
。
選擇性。 記錄每個項目的時程表詳細數據。
createLogFile
- 建立記錄檔
boolean
. 預設值:false
。
選擇性。 (Windows) 建立記錄檔。
logFileVerbosity
- 記錄檔詳細資訊
string
. 選擇性。 使用 時 createLogFile = true
。 允許的值:quiet
、、、normal
minimal
detailed
、、 diagnostic
。 預設值:normal
。
指定記錄檔中的詳細資訊層級。
enableDefaultLogger
- 啟用預設記錄器
boolean
. 預設值:true
。
如果設定為 true
,則會啟用 MSBuild 的預設記錄器。
customVersion
- 自訂版本
string
.
設定 Visual Studio 的自定義版本。 範例:15.0
、、17.0
16.0
。 必須在系統中安裝必要的 Visual Studio 版本。
Azure Pipelines:如果您的小組想要搭配 Microsoft 裝載的代理程式使用 Visual Studio 2022,請選取 windows-2022
作為預設組建集區。 如需詳細資訊,請參閱 Microsoft 裝載的代理程式。
工作控制選項
除了工作輸入之外,所有工作都有控制選項。 如需詳細資訊,請參閱 控件選項和一般工作屬性。
輸出變數
無。
備註
深入瞭解如何在 Azure 上安裝 Visual Studio 映射。
重要
只有執行 Windows 的代理程式才支援這項工作。
規格需求
需求 | 描述 |
---|---|
管線類型 | YAML,傳統組建 |
執行於 | Agent、DeploymentGroup |
要求 | 自我裝載代理程式必須具備符合下列需求的功能,才能執行使用此工作的作業:msbuild、visualstudio |
Capabilities | 此工作不符合作業中後續工作的任何需求。 |
命令限制 | 任何 |
Settable 變數 | 任何 |
代理程式版本 | 1.95.0 或更新版本 |
工作類別 | 建置 |