VSBuild@1 - Visual Studio 生成 v1 任务
使用此任务通过 MSBuild 生成并设置 Visual Studio 版本属性。 详细了解如何在 Azure 上安装 Visual Studio 映像。
语法
# 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 Build 任务。
vsVersion
- Visual Studio 版本
string
. 允许的值:latest
、 17.0
(Visual Studio 2022) 、 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:如果你的团队想要将 Visual Studio 与 Microsoft 托管的代理配合使用,请选择 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:如果你的团队想要将 Visual Studio 与 Microsoft 托管的代理配合使用,请选择 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 生成服务的生成代理处理时,可能会遇到问题。 通过选择 MSBuild x86
,可以解决这些问题。
logProjectEvents
- 记录项目详细信息
boolean
. 默认值:true
。
可选。 记录每个项目时间线详细信息。
createLogFile
- 创建日志文件
boolean
. 默认值:false
。
可选。 仅) (Windows 创建日志文件。
logFileVerbosity
- 日志文件详细程度
string
. 可选。 在 时 createLogFile = true
使用 。 允许的值:quiet
、minimal
、normal
、detailed
、diagnostic
。 默认值:normal
。
指定日志文件中的详细级别。
enableDefaultLogger
- 启用默认记录器
boolean
. 默认值:true
。
如果设置为 true
,则启用 MSBuild 的默认记录器。
customVersion
- 自定义版本
string
.
设置 Visual Studio 的自定义版本。 示例:15.0
、16.0
、17.0
。 必须在系统中安装所需的 Visual Studio 版本。
Azure Pipelines:如果你的团队想要将 Visual Studio 2022 与 Microsoft 托管的代理配合使用,请选择 windows-2022
作为默认生成池。 有关详细信息,请参阅 Microsoft 托管代理。
任务控制选项
除了任务输入,所有任务都有控制选项。 有关详细信息,请参阅 控制选项和常见任务属性。
输出变量
无。
备注
详细了解如何在 Azure 上安装 Visual Studio 映像。
重要
此任务仅在运行 Windows 的代理上受支持。