如何用DotNetCoreCLI@2在Azure托管代理执行dotnet workload restore?
关于Azure DevOps中DotNetCoreCLI@2执行dotnet workload restore的问题
目前DotNetCoreCLI@2任务并不支持直接执行dotnet workload restore命令。这个任务的内置逻辑主要针对常规的.NET CLI命令(如build、publish、restore等),而workload系列属于扩展命令,不在任务的预设支持范围内,直接传入参数会触发"找不到命令"的错误,调整参数变体也无法解决这个限制。
你当前改用CmdLine@2任务执行该命令是完全可行的方案,而且可以通过以下方式优化执行流程:
先确保代理环境安装了支持Aspire的.NET SDK版本(至少.NET 8):
- task: UseDotNet@2 inputs: packageType: 'sdk' version: '8.x' displayName: 'Install .NET 8 SDK'再执行workload restore命令:
- task: CmdLine@2 inputs: script: 'dotnet workload restore' displayName: 'Restore .NET Aspire workloads'
如果后续微软更新DotNetCoreCLI@2任务的支持范围,可能会加入workload命令的支持,但现阶段使用CmdLine@2是最直接可靠的方式。
内容的提问来源于stack exchange,提问作者Rudi
相关产品推荐
相关产品推荐

